Создание простых анимированных гусениц.
|
|
Northern_Strike | Дата: Четверг, 03.02.2011, 10:56 | Сообщение # 1 |
Группа: Администраторы
Сообщений: 524
Репутация: 39
Статус: Offline
| 0) Для начала скачаем сами скрипты и шейдер 1) Создаем основу трака 2) Текстурим его 3) Экспортируем в гигант, и открываем блокнотом файл. В строке <Files> добавляем Code <File fileId="2" filename="scrollUVShader.xml" relativePath="true"/> Потом добавляем к единственному материалу customShaderId="2" Получается примерно следующее Code <Files> <File fileId="1" filename="DT75/Transluc.png" relativePath="true"/> <File fileId="2" filename="scrollUVShader.xml" relativePath="true"/> </Files>
<Materials> <Material name="Transluc_2Material" materialId="1" specularColor="0 0 0" ambientColor="1 1 1" customShaderId="2"> <Texture fileId="1"/> </Material> </Materials> И сохраняем файл 4) Открываем в Гиганте и смотрим что все в порядке 5) Ставим модели гусениц в нужное место 6) Переходим к самому главному - прописывание В моддеске, в графе <specializations> добавляем Code <specialization name="TerraTrac" className="TerraTrac" filename="TerraTrac.lua"/> В графе <vehicleTypes> - Code <specialization name="TerraTrac" /> 7) В хмл файле мода, где нибуть внизу добавляем Code <TerraTrackWheels count="КОЛИЧЕСТВО_РОЛИКОВ"> <TTWheel1 index="ИНДЕКС" referenceWheel="3"/> <TTWheel2 index="ИНДЕКС" referenceWheel="3"/> <TTWheel3 index="ИНДЕКС" referenceWheel="3"/> <TTWheel4 index="ИНДЕКС" referenceWheel="3"/> <TTWheel5 index="ИНДЕКС" referenceWheel="3"/> <TTWheel6 index="ИНДЕКС" referenceWheel="3"/> <TTWheel7 index="ИНДЕКС" referenceWheel="3"/> <TTWheel8 index="ИНДЕКС" referenceWheel="3"/> <TTWheel9 index="ИНДЕКС" referenceWheel="3"/> <TTWheel10 index="ИНДЕКС" referenceWheel="3"/> <TTWheel11 index="ИНДЕКС" referenceWheel="3"/> <TTWheel12 index="ИНДЕКС" referenceWheel="3"/> </TerraTrackWheels> <TerraTracLeft index="ИНДЕКС"/> <TerraTracRight index="ИНДЕКС"/>
<TracBodyLeft index="ИНДЕКС" /> <TracBodyRight index="ИНДЕКС"/> В <TerraTracLeft index="ИНДЕКС"/> пишем индекс левого трака, <TerraTracRight index="ИНДЕКС"/> сюда соответственно индекс правого трака. Сюда <TTWheel пишем индексы катков - колес Можно создать 4 невидимых колеса т.к. ролики (бывшие колеса) не могут быть в индексах TTWheel и в индексах колес. Code <TracBodyLeft index="ИНДЕКС" /> <TracBodyRight index="ИНДЕКС"/> Сюда видимо прописывается группа колес (зачем это надо не знаю, но лучше траки и ролики сгруппировать) За что отвечает referenceWheel="3" я не знаю. 8) проверяем все в игре. Если будет что то непонятно - пишите
Сообщение отредактировал Northern_Strike - Четверг, 03.02.2011, 11:02 |
|
| |
Beckar | Дата: Четверг, 03.02.2011, 11:09 | Сообщение # 2 |
Группа: Администраторы
Сообщений: 692
Статус: Offline
| Если траки крутятся назад, это перепутаны местами индексы TerraTracLeft index и TerraTracRight index?
|
|
| |
Northern_Strike | Дата: Четверг, 03.02.2011, 11:14 | Сообщение # 3 |
Группа: Администраторы
Сообщений: 524
Репутация: 39
Статус: Offline
| Beckar, вроде нет...я нижнюю часть затекстурил в обратную сторону, и она стала по нормальному крутиться...
|
|
| |
Beckar | Дата: Четверг, 03.02.2011, 11:32 | Сообщение # 4 |
Группа: Администраторы
Сообщений: 692
Статус: Offline
| Quote (Northern_Strike) я нижнюю часть затекстурил в обратную сторону, и она стала по нормальному крутиться... Вот, где-то здесь и подвох, для гусениц выполненных одним мешем. Ладно, попробуем.
|
|
| |
Beckar | Дата: Четверг, 03.02.2011, 13:15 | Сообщение # 5 |
Группа: Администраторы
Сообщений: 692
Статус: Offline
| А две текстуры одновременно работать будут? Я имею ввиду карту нормалей, чтобы придать тракам хоть какой-то объем.
|
|
| |
Northern_Strike | Дата: Четверг, 03.02.2011, 13:21 | Сообщение # 6 |
Группа: Администраторы
Сообщений: 524
Репутация: 39
Статус: Offline
| Beckar, вроде должны...но могут не туда крутится.
|
|
| |
Beckar | Дата: Четверг, 03.02.2011, 21:30 | Сообщение # 7 |
Группа: Администраторы
Сообщений: 692
Статус: Offline
| Текстура на торцах гусениц остается статичной?
|
|
| |
MAC | Дата: Четверг, 03.02.2011, 23:44 | Сообщение # 8 |
Группа: Мастера
Сообщений: 61
Репутация: 1
Статус: Offline
| Quote (Northern_Strike) 2) Текстурим его Quote (Northern_Strike) 4) Открываем в Гиганте и смотрим что все в порядке если сравнить их то на первом текстура нормальная а в гиганте ее растянуло...или мне кажется
|
|
| |
Northern_Strike | Дата: Пятница, 04.02.2011, 08:30 | Сообщение # 9 |
Группа: Администраторы
Сообщений: 524
Репутация: 39
Статус: Offline
| MAC, да...я что то этого не замечал как то... Добавлено (04.02.2011, 08:30) --------------------------------------------- Beckar, вроде не будет статичной...щас сконверчу и проверю это.
Сообщение отредактировал Northern_Strike - Пятница, 04.02.2011, 08:27 |
|
| |
Beckar | Дата: Суббота, 05.02.2011, 20:48 | Сообщение # 10 |
Группа: Администраторы
Сообщений: 692
Статус: Offline
| В общем, при текстуринге весь подвох в том, что нельзя крутить ювишки. Если текстура спроецировалась задом-наперед, разворачивать ювишки не нужно, нужно продолжить текстурирование и уже потом развернуть саму текстуру.
|
|
| |
Northern_Strike | Дата: Воскресенье, 06.02.2011, 14:34 | Сообщение # 11 |
Группа: Администраторы
Сообщений: 524
Репутация: 39
Статус: Offline
| Beckar, не надо было тебе 100 перетекстуривать...в lua можно выставлять скорость и положение передвижения текстуры по осям x y z...в следующий раз проще будет...
|
|
| |
Beckar | Дата: Воскресенье, 06.02.2011, 15:06 | Сообщение # 12 |
Группа: Администраторы
Сообщений: 692
Статус: Offline
| Northern_Strike, ничего страшного - на ошибках учатся! Я в этот нюанс врубился когда Зомби написал, что прибавил скорость гускам. Полез в LUA и обнаружил там эту строчку с движением по координатам. С эти скриптом гуски можно и поперек пустить. Code local xt,yt,zt = getRotation(self.wheels[3].repr); setShaderParameter(self.trackL, "UVPlaySpeed", 0, xt*-0.5, 0, 0, false); local xt2,yt2,zt2 = getRotation(self.wheels[4].repr); setShaderParameter(self.trackR, "UVPlaySpeed", 0, xt2*-0.5, 0, 0, false);
|
|
| |
Northern_Strike | Дата: Воскресенье, 06.02.2011, 15:10 | Сообщение # 13 |
Группа: Администраторы
Сообщений: 524
Репутация: 39
Статус: Offline
| Beckar, можно еще траков добавить, если мало будет...
|
|
| |
Freddie | Дата: Воскресенье, 06.02.2011, 17:48 | Сообщение # 14 |
Критик
Группа: Коллеги
Сообщений: 44
Репутация: 6
Статус: Offline
| Ребята, если на другом форуме не видели, я подобрал скорость гусениц, чтоб не казалось, что трактор плывет по земле. Нужно ставить скорость не -0.5, а -1.2 тогда нижняя ветвь гусеницы не движется относительно земли.
Поможем разобраться в Bашем внутреннем мире. --- Фашисты 786-28-94
|
|
| |
Northern_Strike | Дата: Понедельник, 07.02.2011, 19:20 | Сообщение # 15 |
Группа: Администраторы
Сообщений: 524
Репутация: 39
Статус: Offline
| Freddie, да видел, надо испытать. Добавлено (07.02.2011, 19:20) --------------------------------------------- У меня есть идея как сделать, чтобы одна гусеница при повороте останавливалась. Идея сама по себе простая, но надо как то изменить скрипт (прописать пару строчек)...а я в этом не силен...
|
|
| |