Форумы Homeworld3.RU  

Go Back   Форумы Homeworld3.RU > Сделай сам! > Верфи близ Сарума [HW2 Modding]
Register Forum Rules FAQ Members List Calendar Search Today's Posts Mark Forums Read

Reply
 
Thread Tools
Quote
Old 11-27-2007, 12:32 AM   #1
Orphey_OZ
МичманВ запасе
 
Orphey_OZ's Avatar
 
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
Attached Images
File Type: jpg Maya_HardPoints.jpg (103.1 KB, 205 views)
Orphey_OZ is offline   Reply With Quote
Old 05-30-2014, 11:49 AM   #2
Filipp
ЛейтенантЛейтенант
 
Filipp's Avatar
 
Faction:
Предтечи

Join Date: May 2014
Location: Владивосток
Posts: 107
Re: Урок: Hard Points, Texturing

Есть вопрос. А как отметить любой объект подсистемой? И обязательно надо отделять объекты для приведённых выше манипуляций?
Filipp is offline   Reply With Quote
Old 05-30-2014, 11:59 AM   #3
Pandorazero
Адмирал флотаСтарший офицер
 
Pandorazero's Avatar
 
Faction:
Хиигаряне

Join Date: Mar 2007
Location: Украина , Киев
Posts: 1,379
Восклицание Re: Урок: Hard Points, Texturing

Quote:
Originally Posted by Filipp View Post
Есть вопрос. А как отметить любой объект подсистемой? И обязательно надо отделять объекты для приведённых выше манипуляций?
Филип ты имееш программу Скайп для общения ?, если да то я могу помочь с вопросами по модингу - я в скайпе называюсь Pandorazero
Нащет твоего вопроса , да подсистема это одельная модель которая цепляется на определенное место !

Last edited by Pandorazero : 05-30-2014 at 12:11 PM.
Pandorazero is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT +3. The time now is 12:53 PM.

Page generated: 0.042 seconds (88.14% - PHP and 11.86% - MySQL), 12 queries total