![]() |
|
Register | Forum Rules | FAQ | Members List | Calendar | Today's Posts | Search |
![]() |
|
Thread Tools |
![]() |
#1 | ||
Orphey_OZ
Faction: Хиигаряне Join Date: Nov 2007
Location: UA\Kiev\Furon
Posts: 91
|
Урок: Hard Points, Texturing
Hard Points, Texturing
Итак, у нас есть Maya(у меня 5.0) и Relic Maya Tools, взятых, кстати, с той страницы, что я давал в начале где-то, там ещё папка Shaders -обязательно скачайте! Ну, когда с горем пополам разобрались с Туулз, то запускаем Майю. 1) Если мы всё сделали правильно, кроме вкладок "Custom","Fluids","Meshes" и т.д. у нас должна быть ещё и вкладка Relic Tools. 2) Импортируем в Майю собственно кораблик. Если нету, можно для начала конусы насоздавать (сорри, нет пока картинок). Называем его "имя_объекта_LOD0", что показывает, что данный меш будет отображаться при максимальном наезде камеры на него. Если нужно, чтобы меш был "подальше", называете его "то_же_имя_LOD1" и т.д. до трёх. (аналогично ко всем остальным мешам(пушки, двиглы) добавляется постфикс _LOD#) 3) ВАЖНО: Идём во вкладку "Движения", там должен быть объект Joint, выглядит как три шарика, друг с другом соединённые синими полосочками. В общем, поймёте. Называете его Root(!!!иначе нельзя!!!), после чего заходите в Hypergraph (не знаю, как вы его найдёте в русских версиях - Гиперграфик его переводят =)), я лично щёлкаю на кнопку со стрелкой вниз в правом низу экрана, там выбираю Hypergraph. В нём!!! видим два объекта (в идеале), ваш меш и Joint Root. Нужно их спарить, то есть ваш меш сделать дочерним объектом по отношению к Джоинту. Как это делается? Очень просто - щёлкаем на среднюю клавишу мыши, перетаскиваем меш на Root и вуаля! Видим серую линию, которая и показыает, что отныне они связаны узами "один-к-одному" 4) На вкладке Relic Tools клавиша "Create HW2 Shader", жмём её. 5)Теперь разберёмся с объектом. Жмём по нему пкм, выбираем самый верхний пункт, который ещё с троеточием. Открываются атрибуты. Там во вкладках выбираем InitialShadingGroup, для материала поверхности вместо "lambert" набираем "hw2Shader". Шарик вверху должен поярчать. Появилась новая вкладка - hw2Shader. Заходим в неё, идём вниз, смотрим парамы списка "HW2 Shader Attributes", там выбираем нужный атрибут (ship.st, рекомендую). После чего можно экспортировать в Hod, он должен появиться в списке экспорта. Дальнейшее после, я пошёл по сетке в Хому гамиться. Дальнейшее расскажу позже чуть. Итак, сегодня мы проHODим текстуры. Без них у вас получится только чёрное пятно. Вопрос: Как затекстурить корабль в Майе(5.0), если есть моделька, и уже успешно сделаны предыдущие пять шагов? 6)Снова входим во вкладку hw2Shader. Сразу вверху видим параметр Сolor, рядом - квадратик чёрно-белый. Жмём на него. открывается окно выбора текстуры, выбираем File. После этого видим чёрный квадратик и чуть ниже иконку папки. Тут вы разберётесь, я думаю, чё может быть проще - выбираете текстуру или PSD, или TGA uncompressed RLE+depth32. 7) Итак, у вас теперь есть картинка. ВЫбираем меш, держим ПКМ, выбираем Face, выбираем все! Теперь жмём на вторую сверху иконку стола справа (на нижней панели) - там четыре окна проекции. Выбираем то, на которое проектируем текстуру и! самое главное! Жмём пробел->Edit Polygons->Texture->Automatic UVW Mapping. Всё, теперь у нас есть UV-точки. 8)Опять возвращаемся к виду с одним окном проекции (первая слева сверху кнопка (на нижней панели)). Не снимая выделения с объекта жмём на кнопку со стрелкой вниз, выбираем уже не Hypergraph, а UV texture editor. Там видим коричневые линии, всё непонятно и не хочет выделяться. Идти пить кофе сразу не надо, нужно снова зажать ПКМ и выбрать UV. Теперь можно выделять, берём весь объект. С помощью кнопок управления на левой верхней панели подгоняем текстуру под объект, готово! Можете экспортировать. Это, конечно, я очень сжато всё сказал, можно разные части проектировать на разные окна проекции и всё такое эцетера, но для начала пойдёт. На следующем "уроке" будем проходить Хардпоинты пушек (наконец-то!). Если что-то непонятно, не стесняйтесь, пишите в соседнюю тему. Ну, я думаю, пора уже пустить по рукам и последний из крупных туториалов. Взят также из моего личного опыта. Урок третий: Конфигурация точек привязки (хардпойнтов). Сначала - некоторое лирическое отступление. для того, чтобы корабль имел двигатель, нужны хардпойнты.Для того, чтобы он стрелял, нужны хардпойнты. Так что без них в военное время никак не обойтись! Итак, обычный корабель в Homeworld II имеет такую иерархию узлов в Hypergraph (я думаю, вы уже запомнили как в него входить и создавать узлы (Joints) и родительские->дочерние связи между ними - из прошлых шагов ) жирным шрифтом выделены узлы, обычным - всё остальное Code:
+Root --Rootmesh_LOD0 --Rootmesh_LOD1 --Rootmesh_LOD2 --Rootmesh_LOD3 -+EngineNozzle1 --позиция двигателя ---EngineShape1 --Квадрат (объект Plane, вкладка "многоугольники"), сторона которого - ширина инверсионного следа в игре, располагайте там же, где и родительский EngineNozzle. Пжалста, делайте наименее детализированным, четырех точек хватит! --+EngineBurn1 --квадрат, но здесь важна только его позиция. Тоже делайте наименее детализированным и располагайте чуть ближе к двигателю чем EngineShape - он указывает на начало свечения вокруг двигателя. ----curve1 --сплайн (любой объект из вкладки "Кривые"), первая точка которого имеет начало в центре координат. Указывает на свечение вокруг двигателя. в игре каждая точка этого сплайна будет светиться, тем меньше, чем дальше она от начальной (той, что в начале координат). Вместе эти точки и создают свечение. -+EngineNozzle2 --позиция второго двигателя ---EngineShape2 --+EngineBurn2 ----curvesecond -+Weapon_Gun1_Position --позиция первой пушки ---gunmesh_LOD0 ---gunmesh_LOD1 ---gunmesh_LOD2 ---gunmesh_LOD3 ---Weapon_Gun1_Direction ---Weapon_Gun1_Rest --+Weapon_Gun1_Latitude ---+Weapon_Gun1_Muzzle -----turretmesh_LOD0 -----turretmesh_LOD1 -----turretmesh_LOD2 -----turretmesh_LOD3 --Это всё одноствольные поворачивающиеся пушки -+Weapon_GunFront_Position --позиция второй пушки ---gunmesh_LOD0 ---gunmesh_LOD1 ---gunmesh_LOD2 ---gunmesh_LOD3 ---Weapon_GunFront_Direction ---Weapon_GunFront_Rest --+Weapon_GunFront_Latitude ----Weapon_GunFront_Muzzle -----turretmesh_LOD0 -----turretmesh_LOD1 -----turretmesh_LOD2 -----turretmesh_LOD3 Такую картину можно видеть, открыв HOD-файл с помощью проги hardEd, что я давал на первой странице. Насчёт того, как располагаются узлы пушек - вот картинка. А теперь, собственно, объяснение хардпоинтов! Внимание! имена узлов чувствительны к регистру! 1) узлы двигателей должны быть поименованы как "EngineNozzle#", где # принимает значения 1 и более 2)Узлы для создания инверсионных следов должны быть поименованы как "EngineShape#", где # совпадает с номером родительского EngineNozzle. 3) Аналогично у узлов для создания свечения - имя "EngineBurn#" где # совпадает с номером родительского EngineNozzle. 4) Имя сплайна, дочернего к EngineBurn - любое. 5) Имена мешей, дочерних к тому или иному узлу - любые с постфиксами "LOD#" где # обозначает уровень детализации. Само собой, что детализацию этих мешей мы сами делаем в Майе. 6) Имена узлов оружия должны быть "Weapon_Name_Jointname", где Name - имя пушки, может быть любым, но у узлов, дочерних к Position - такое же, как и у родителя. Jointname: а) "Position"(дочерний к Rootб сюда цепляйте меш собственно пушки) б) "Direction"(дочерний к Position) в) "Rest"(дочерний к Position) г) "Latitude"(дочерний к Position, его наличие условно, он есть, если пушка будет поворачиваться) д) "Muzzle"(дочерний к Latitude, если пушка будет поворачиваться, к Position в противном случае. Сюда цепляется меш ствола) Code:
Lesson is created by Dron01 |
||
![]() |
![]() |
![]() |
#2 | ||
Filipp
Faction: Предтечи Join Date: May 2014
Location: Владивосток
Posts: 107
|
Re: Урок: Hard Points, Texturing
Есть вопрос. А как отметить любой объект подсистемой? И обязательно надо отделять объекты для приведённых выше манипуляций?
|
||
![]() |
![]() |
![]() |
#3 | |||
Pandorazero
Faction: Хиигаряне Join Date: Mar 2007
Location: Киев
Posts: 1,419
|
![]() Quote:
Нащет твоего вопроса , да подсистема это одельная модель которая цепляется на определенное место ! Last edited by Pandorazero : 05-30-2014 at 12:11 PM. |
|||
![]() |
![]() |
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|