AnvilBay Forum
Мастерская TES => В разработке (плагины/локализации) => Skyrim => Тема начата: Almazi от 11 Февраля 2012, 00:57
-
Здесь (http://skyrim.nexusmods.com/downloads/file.php?id=8763) выложил альфа версию своего скрипта по морфингу в принципе любой геометрии на тела, пофигу чьи. - сохраняете шаблон и вперед. Пока что скрипт туповат и медленноват. Но на то он и альфа версия. Интересно насколько это нужно. (мне кажется людям заморачивающимся по поводу различных размеров тел и их составляющих весьма и весьма пригодится). Вобщем юзаем если есть желание и если будут идеи - пишем здесь. а уж я постараюсь реализовать.
[hide]
(http://static.skyrim.nexusmods.com/downloads/images/8763-1-1328906610.jpg)[/hide]
В планах
- допилить - сейчас если для вершины не найдено совпадений по векторам смещения то она останется на месте
- добавить обратное преобразование из 1 в 0
- добавить хренову тучу проверок чтоб не падал чуть что
- добавить проверку на правильность шаблонов - сча это просто сообщение
- добавть преобразование со смещением дальше за пределы шаблонов в обе стороны
- чтото придумать для торчащих концов типа наплечники и прочее... сейчас более мене корректно только на облегашках работает
- да, еще нужно учесть полигоны направленные вовнутрь, сейчас они некорректно обрабатываются.
- а еще на нексусе подсказали - нужно припилить проверку мешей на соответствие прежде чем пихать в nif
-
кому-то покажется интересным и актуальным.
Но мне кажется, что не будет сильно востребованной. Народ просто не станет создавать шмотки с морфами.
Создадут одну шмотку для _0 и _1 тела ... и все. Она в любом случае не будет глючить и во всех случаях корректно будет отображаться.
P.S.
На данный момент - есть на много боле серьезные проблемы, как с самим экспортом так и с добавлением в игру.
Ваще, создается стойкое впечатление, что создавая Скайрим, они только и думали ... как бы наделать кучу проблем и трудностей модмейкерам.
Вон ... мультисубобьект не работает, нод щейдеров во время экспорта - только в помойку ... про скин ваще молчу. Убить того кто скин создавал.
И еще целый список проблем (развернутые кости по Z оси и т.д. и т.п.)... которые хотелось бы в первую очередь решить.
-
Посмотрел скриншот... имхо, не для чайников эта штука. Я вот ничего не понял. темный, что взять.
-
Ну, если не заморачиваться по поводу 0 и 1 то естественно он не нужен))). Я лично его делал в первую очередь потому что создал свой реплейсер тел. а это значит нужно и всю игровую броню под него подогнать. после того как подумал сколько это гемора... написал скрипт .
ТемныйКот - а что конкретно непонятно? Я постараюсь поправить.
Тебе нужно сохранить 2 тела (_0 и _1) в шаблоны. Все, шаблоны готовы. теперь берешь любую броню и методом нажатия 2-х кнопок получаешь модели морфа, тоесть из худой толстую))) (ну и наоборот в дальнейшем постараюсь сделать)
Надо будет потом еще и видеоурок сделать.
-
Я лично его делал в первую очередь потому что создал свой реплейсер тел. а это значит нужно и всю игровую броню под него подогнать. после того как подумал сколько это гемора... написал скрипт .
покажешь?
-
чего показать то? не понял)))
реплейсер тел в соседней теме про бельишко. Реплейсер брони\одежды не начинал даже. Скрипт на нексусе.
-
чего показать то? не понял)))
реплейсер тел в соседней теме про бельишко. Реплейсер брони\одежды не начинал даже. Скрипт на нексусе.
не... я с начала подумала, что создал новое тело и для этого тебе потребовалась переделка всех ванильных шмоток.
-
Надо будет потом еще и видеоурок сделать.
Во-ооот! Вот-вот-вот. Даже просто набор скринов с русскими комментариями и стрелками, для темных, куда нажимать поможет хоть понять/попробовать.
А видео, эт вообще хорошо.
Если судить по описанию штука очень полезная - тел сейчас много (а если разберутся по новым расам будет ещё больше), и была у меня дурная мысль - для разных рас сделать разные тела
Ну глупость же, что и эльфийка, и орка ВЫГЛЯДЯТ ОДИНАКОВО! Ну цветом отличаются, но телосложение то одно! Эт вообще никак никуда.
Но, сразу отбросил идею, потому как делать по 3-5 реплесеров пусть даже только самой ходовой брони... это повеситься.
А вот если этот скрипт строгает реплейсы автоматом... о-ооо, тогда идея приобретает реальные черты.
Ставим несколько тел (пусть три - эльфы, орки, люди), берем бронь (стальную пускай), автоматим три репа, в СК приписываем к стальной броне в качестве арматуры эти три расовых репа... Вуаля! Одна и та же бронь под каждую расу.
В общем подожду скрина/урока, и попробую.
-
не... я с начала подумала, что создал новое тело и для этого тебе потребовалась переделка всех ванильных шмоток.
Нет, для начала подгонка, в основном тех в которых видны открытые участки тел. В процессе возможно буду вносить небольшие изменения. Может чтото и переделаю напрочь. Лично мне нравится что и как сделала беседка в Скайриме. (только пожалста не нужно эту тему развивать - я в курсе вашей позиции)
Телосложение у ельфов и орков измененное, можно в Ките настраивать, а вот базовая модель одна... и таки да, я так и не понял как сделать разные модели разным расам.. нас походу отключили от етого)))
"Ставим несколько тел (пусть три - эльфы, орки, люди), берем бронь (стальную пускай), автоматим три репа, в СК приписываем к стальной броне в качестве арматуры эти три расовых репа... Вуаля! Одна и та же бронь под каждую расу." - ну по идее так и будет.
... сделать чтоли скрипт и на русском языке тоже?... поидее только кнопки и сообщения переименовать...
-
А кстати как вообще управлять этим морфом в игре?
Т.е. я не в курсе , можно как-то динамически менять его уровень, по игре, анимацией или командами?
-
А кстати как вообще управлять этим морфом в игре?
Т.е. я не в курсе , можно как-то динамически менять его уровень, по игре, анимацией или командами?
проверяла на телах - работает автоматом. А вот само управление ... было бы интересным.
-
Это скрипт для 3ds max - тоесть полезен только модмейкерам при подготовке моделей
-
Телосложение у ельфов и орков измененное, можно в Ките настраивать,
Не подскажешь где, в какой вкладке, как настраивать? Человеческие расы ведь тоже можно регулировать?
(в соответствующей теме лучше)
-
Almazi, а ты не мог бы описать сам алгоритм поиска расстояния, на которое надо сместить точку одежды?
А то в скриптах 3дМакса я ничего не понимаю
PS: сам пробовал фантазировать на эту тему, но у меня такая сложная математика с тригонометрией выходит, что программа годы считать будет чтобы натянуть одежду на новое тело, а у тебя вроде код небольшой и длинных формул я не заметил.
-
я сразу честно говоря писал длинные формулы. потом выкинул их все и все сделал на стандартный функциях макс скрипта.
В целом алгоритм такой - есть вектор между точками тела _0 и _1. (он сохраняется в файл шаблонов). строим луч (ray) из точко тела _1 по вектору направленному из точки _1 в точку _0. ищем пересечение с нашим объектом (intersectRay). есть точка пересечения. Ищем ближайшую вершину в нашем объекте. смещаем ее по вектору из точки пересечения в точку _1. формула смещения - {вектор*смещение + координата вершины} где смещение это расстояние между точкой пересечения и точкой _1. Это вкратце. Там еще куча условий есть, если будут вопросы - задавай.
-
Выходит 3дМакс сам находит точку пересечения прямой с плоскостью и расстояние до этой точки (у него есть для этого спец функции) ?
Если так, то это круто ! Так намного проще, чем реализовывать решения параметрических уравнений.
И ещё я так понял, что модели тел _0 и _1 должны иметь одинаковое количество точек, и точки должны иметь одинаковое расположение в обоих массивах точек тел ?
Иначе правильный вектор построится не должен. И тогда одёжку из Обливиона не перенести в Скайрим .
-
тебе нужен шаблон по скайримовским телам (а к ним требование такоеже как и в скайриме) а броню из облы переноси скока хош.
-
То есть можно указать в качестве тела№1 - тело из Обливиона, а тела№2 - тело из Скайрима, скрипт создаст "шаблон" для переноса и переделает броньку ?
Тогда вопрос - что такое "шаблон", что он содержит ?
-
Неееееет))))
В качестве шаблона указываешь только скайримовское - там их два варианта - морф_0 и морф_1. Броньку ручками придется подогнать под вариант _0 (ну не получилось сходу у меня сделать это автоматом). Потом жмякаешь морф и получаешь вариант под тело _1 (изначально скрипт для этого и задумывался)
Кстати о птичках - выкатил бета версию (http://skyrim.nexusmods.com/downloads/file.php?id=8763)
Добавил ползунок для изменения дистанции морфинга (тоесть на сколько залезть ЗА тело _1)
Пока работать над скриптом прекращу - буду делать реплейсер игровых брони и идежды. Заодно тестировать скрипт. если будут важные обновления - выложу и предупреждю. Кстати кто нибудь им реально уже пользовался?
зы: преимущество шаблонов в том, что их можно сделать много вариантов - например для обнаженного тела (естественно можно и разных размеров груди и бедер и тп), то же тело но с грудью в тугом корсете (ну вы понимаете ), то же тело обтянутое платьем\броней... пока все что в голову пришло, в процессе создания реплейсера проясниться.
Да! забыл сказать - протестил скрипт на игровых шмотках - эбонитовой броне и халатике ноктюрнал. работает на ура. (только при морфинге с _0 до _1)
-
доберусь до переделки шмоток... потестирую
Глядишь... к тому времени уже и версия финальная выйдет.
-
Almazi, запости, плиз хотя бы скрины с стрелками, куды тыцкать. Этаж риальна вундервафля по перетаскиванию шмоток!
-
доберусь до переделки шмоток... потестирую
Глядишь... к тому времени уже и версия финальная выйдет.
Ага, было бы круто .
А рускоязычную картинку постараюсь вечерком залить, вместе с обновкой англицкой.
-
@Almazi:
Всё, теперь разобрался. Спасибо.
Но было бы просто офигенно, если бы можно было использовать абсолютно разные тела для подгонки одежды. Я как раз над этим фантазировал.
Хотелось на С++ написать программку, где указал бы три OBJ файла (тело1, тело2, одежда1), и на выходе получил бы OBJ для одежды1, подогнанной под тело2.
Попробую теперь про скрипты своего любимого Блендера почитать, может там попроще получится ...
-
@Almazi:
Всё, теперь разобрался. Спасибо.
Но было бы просто офигенно, если бы можно было использовать абсолютно разные тела для подгонки одежды. Я как раз над этим фантазировал.
Хотелось на С++ написать программку, где указал бы три OBJ файла (тело1, тело2, одежда1), и на выходе получил бы OBJ для одежды1, подогнанной под тело2.
Попробую теперь про скрипты своего любимого Блендера почитать, может там попроще получится ...
игра вылетит... количество вершин в _0 и в _1 должно быть одинаковым...
-
Это да, но я пытался придумать немного другой алгоритм. У меня тело1=HGEC или TGND... из Обливиона, тело2=_0 или _1 из Скайрима.
Теперь мы берем одежку сделанную под тело1 и не нарушая пропорций, натягиваем её на тело2.
Алгоритм Almazi тут не сработает, т.к. у моделей тел будет разное кол-во точек и разное расположение этих точек в пространстве. Вектор смещения, как мне кажется, должен строится используя нормаль для каждого вертекса одежды и его пересечения с плоскостями тела1 и тела2.
В итоге имеем OBJ одежды, подогнанной к одному из тел Скайрима, например _0. Теперь уже для подгонки к _1 можно использовать оба алгоритма. Количество точек одежды не меняется в любом случае.
Но какие тут длинные тригонометрические формулы самому реализовать надо, это капец. Хотелось найти способ попроще...
-
Попробовал. В результате, при нажатии "test bodyes 0 and 1" вылезает сообщение "two object verified - check is not performed". Насколько я понял это значит, что тела не совпадают. Брал ванильные мужские тела.
PS Проверил модификатором Morpher все нормально совпадает.
-
Anton, не следует слишком надеяться на автоматику. Многолетняя практика показала что это ни к чему хорошему не приводит - зря потратишь время и нервы (ну разве что чисто для импирического иследования). Все чо тебе нужно - это добиться совпадения уровня... си... сорри...груди , промежности и подмышек - это все легко решается банальным FFD. Причем за 10 -15 минут. А дальше скрипт.
Можно конечно написать скрипт который будет работать с темплейтом одной модели, тогда он будет использовать вектор нормали фейса. Но это не совсем правильно - ибо на изгибах к примеру под грудью получим уползание векторов вниз (в то время как на темплейте из двух моделей получаем горизонтальное смещение , ну или почти горизонтальное вернее)
two object verified - check is not performed!!! Ядрена кочерыжка!!! а я и не подумал что это можно двояко истолковать. Я имел ввиду что не парься, проверка не выполняется - ибо ее нет еще совсем. . Пойду на нексус комент напишу :(.
-
@Almazi:
Может ты и прав. Просто хотелось попробовать сделать нечто похожее как в ДАЗе. Там ведь как то оно работает - перетянул заготовку, подождал пару секунд и всё, одёжка на теле.
-
@Almazi:
Может ты и прав. Просто хотелось попробовать сделать нечто похожее как в ДАЗе. Там ведь как то оно работает - перетянул заготовку, подождал пару секунд и всё, одёжка на теле.
там реализовано через морфы...
Причем подождал и уже на теле. Фишка в том, что она будет на теле только в том случае, если морф на теле и на шмотке совпадет и будет одинаковым.
Т/е - программа пробегается по морфам, их сверяет, если находит изменения в морфе тела - вносит такое же изменение в этот же морф шмотки.
Поверь - это еще больше геморроя...
-
Интересует вопрос у тех кто пользовал скрипт - насколько долго он пашет (желательно укажите свой проц с частотой, количество вершин в темплейте и количество вершин в объекте, а также примерное время потраченное на обработку) - мне для статистики. Долбаный Макс скрипт медленный как черепаха.
Сча кстати пилю отдельный морфинг только для тел. На случай когда вы уверены что вершины темплейта и тела под доспех совпадают (ну тоесть вставляете меш своего тела в броню\одежду а потом выкидывате из него фейсы). Просто первая же попытка поменять робу заключенного показала что это нужно сделать .
-
two object verified - check is not performed!!! Ядрена кочерыжка!!! а я и не подумал что это можно двояко истолковать. Я имел ввиду что не парься, проверка не выполняется - ибо ее нет еще совсем. . Пойду на нексус комент напишу :(.
А ну да, я же продолжения не написал. Жму четвертую кнопку и появляется сообщение "incorrect data in selection" После нажатия ОК мы перемещаемся к первой стадии, то есть выбора тела _0.
-
ну тут все понятно - конвертни в Editable_Poly
-
Получилось. Ужас что получилось.
-
скриншоты в студию) я сделал выводы что чем больше полигонов в шаблонах, тем точнее результат
-
(http://s018.radikal.ru/i505/1202/e1/83e015774668t.jpg) (http://s018.radikal.ru/i505/1202/e1/83e015774668.jpg) (http://i077.radikal.ru/1202/34/cee287e39f5bt.jpg) (http://i077.radikal.ru/1202/34/cee287e39f5b.jpg)
-
Ну, факт что рабоатет)))) а что в качестве шаблона было?
Если не трудно, давай больши инфы, что б мне можно было понять в чем беда и полечить
-
Я уже писал, ванильное мужское человеческое тело, malebody.
-
ага, точно. Надо будет попробовать самому на такой броне. спасибо.
-
Собственно апдейт. все еще бета версия.
Добавил отдельный морфинг для тел - делаем дырки в модели _0 (убиваем то что прикрыто одеждой\броней) - загружаем шаблон, тискаем кнопку, ждем и получаем тело _1 с точно такими же дырками (еще не дописано до конца - нужно повысить точность вычисления, могут оставаться неперемещенные вершины, но их и ручкми можно чуть что на место пока поставить)
добавил возможность работать с выделеными полигонами - тоесть морфинг только для них
сделал несколько итераций просчета смещения вершин - получше результат получается.
Добавил небольшие проверки при сохранении шаблонов
Короче, чем больше полигонов будет в шаблонах, тем лучше результат!
Плохо работает на завернутых вовнутрь или в сторону поверхностях (буду думать как улучшить)
-
Я пропустил, или русского тутора для этой плюшки так и нет?
-
в архиве с нексуса картинка с русскими подписями есть.
..... сделал версию 0.9. Теперь мне нравится как все работает. Довольно быстро. На сложных моделях не получится все нажатием одной кнопки, зато при выделении полигонов можно по частям сделать.
Удобно получилось с сохранением шаблонов брони. К примеру хотите немного поменять дефолтную броню (ну или свою) и подогнать под свою версию реплейсера - загружаем обе мешки дефолтной (или своей -_-), сохраняем в шаблоны (до сохранения можно изменить геометрию под нужные пропорции). Вторую мешку можно выбросить. Делаем изменения в первой ( велдим левые вершины, добавляем немного геометрии, можно маппинг поменять! и прочее) потом морфим на воторую геометрию - два меша готовы. правда это работает только для совпадающих вершин +- погрешность.
Все, нужно поиграться пару дней в Скайрим а потом и ридми сделать нормальное. Кстати, кто нибудь может помочь с переводом с русского на английский? а то я задолбался писать всякую лабуду со словарем, нормальное ридми мне сложновато :(. Требуется так сказать локализатор, только с рус на инглиш.
-
Так желающих не найдется помочь?
-
Исправил критическую ошибку и несколько мелких багов. Написал РУССКОЕ РИДМИ С КАРТИНКАМИ!. По прожнему нуждаюсь в помощи по переводу на инглиш.
поскольку на нексусе какойто тупняк с добавлением модов и файлов, забирать здесь - ifolde (http://ifolder.ru/29396315) или тут (http://www.getzilla.net/files/3116282/bodies_morpher.7z.html)
на нексусе (http://skyrim.nexusmods.com/downloads/file.php?id=8763) удалось загрузить свежую версию, так что теперь и там есть
-
Almazi , спасибо, посмотрим, с нексуса скачал без заморочек, но тупит нексус, хотел плюсик тебе поставить, уходит нексус в ошибку....
...вот бы экспорт из макса в nif кто то поправил...
-
лучше разработчиков nif-плагина это никто не сделает к сожалению
-
Всем снова здрасте. Поскольку скрипт приближается к этапу заморозки надолого ввиду хорошей своей работы, кто какие реплейсеры тел знает, под которые можно сохранить файлы шаблонов для пользователей.
Я планирую сделать:
Свой Smooth Females
Кристы, если у нее есть морфы в реплейсере
CBBE по всей видимости в разных вариантах (собственно может предложите какие есть, я то за этим не слежу честно говоря)
UNP
Muscular Women by Elmanouche
Ну и подскажите плиз что еще есть)
-
Их (реплейсеров женских тел) целая куча : http://skyrim.nexusmods.com/downloads/file.php?id=12694 (http://skyrim.nexusmods.com/downloads/file.php?id=12694) - E55 Female Body Replacer;
http://skyrim.nexusmods.com/downloads/file.php?id=5390 (http://skyrim.nexusmods.com/downloads/file.php?id=5390) - Acdale EyeCandy Body ADEC;
http://skyrim.nexusmods.com/downloads/file.php?id=12179 (http://skyrim.nexusmods.com/downloads/file.php?id=12179) - Rebirth Female Body Shape;
http://skyrim.nexusmods.com/downloads/file.php?id=6667 (http://skyrim.nexusmods.com/downloads/file.php?id=6667) - 4uDIKs Real body -4RB;
http://skyrim.nexusmods.com/downloads/file.php?id=2440 (http://skyrim.nexusmods.com/downloads/file.php?id=2440) - Female Body Mesh;
http://skyrim.nexusmods.com/downloads/file.php?id=2866 (http://skyrim.nexusmods.com/downloads/file.php?id=2866) - Skyrim Female Body Replacer.
Последними тремя вроде вобще никто не пользуется. Да и из первых более-менее известен только ADEC.
-
Спасибо) ADEC точно добавлю к списку
-
Решил приделать штаны от воровской брони к обычной кожной. В качестве шаблонов использовал ванильное тело. Применил bodies morpher. В результате на штаны подействовало, вот на саму кирасу почти нет, в результате штаны торчат сквозь кирасу..
-
если с первого раза не получилось, лучше делать по частям - выделяешь например полигоны штанов, делаешь морфинг с параметром в процентов 5 - 10, а для кирасы делаешь побольше. Если не получится - перешли плиз если можно модель, я посмотрю, может какой совет добавлю в ридми.
-
Да хоть 100% для кирасы ставь, она не становить больше или меньше, а просто кое-где идет некоторое шевеление рёбер и все.
http://zalil.ru/32993245 (http://zalil.ru/32993245)
-
Спасибо за файл, посмотрел.
Во первых, и самое главное - ванильная модель слишком малополигональная, я сделал сглаживание для ванильной модели (только женскую) и выложил на нексусе (http://skyrim.nexusmods.com/downloads/file.php?id=8763)
Во вторых, если подгрузишь модель тела к броне, то увидишь, что она итак выходит за пределы модели _1, так что сильных подвижек не жди)))