14.06.2015, 18:53
Воспользовавшись источником: <!-- m --><a class="postlink" href="http://www.gildor.org/smf/index.php?topic=57.0">http://www.gildor.org/smf/index.php?topic=57.0</a><!-- m -->
Я решил написать гайд по импорту моделей из Lineage 2 конкретно под GoldSrc.
1) Экспортируем меши и анимации из клиента Lineage 2 (папка animations, формат *ukx) через umodel
Для этого создаем батник:
2) Достаем меш (SkeletalMesh, формат *psk) и анимацию (MeshAnimation, формат *psa) необходимого NPC из соответствующих папок после экспорта
3) Открываем соответсвующий архив текстур в клиенте (по примеру батника это - LineageMonstersTex3.utx) через L2ViewUTX
4) Сохраняем все текстуры от NPC (по умолчанию будут в dds)
5) Далее необходимо нарезать анимации для NPC. Запускаем DN UnPSA Toolkit
Жмем Open и выбираем наш *psa файл.
Жмем Save All Animations to Multiple Files и видим, что у нас уже есть все анимации по отдельности.
6) Следующим этапом будет редактирование текстур (создание прозрачности и сохранение в формате, который поймет GoldSrc).
Для этого открываем *dds текстуры нашего NPC в Photoshop или любом удобном для вас редакторе, затем:
- закрашиваем прозрачные области сплошным цветом (например черным);
- переводим в режим индексированного цвета
- сохраняем как bmp 8 bit
7) Теперь нам нужно "нормализовать" анимации или говоря иначе - привести их в понятный для GoldSrc формат.
Для этого открываем Milkshape, жмем File->Import->Unreal PSK/PSA и выбираем одну из анимаций.
Теперь жмем File->Export->Half-Life SMD, выбираем в настройках сохранения "Sequence", жмем ОК.
Таким же образом необходимо пере-сохранить каждую анимацию NPC.
В самом конце удаляем *qc файлы анимаций - они нам не понадобятся.
8) Переходим к импорту меша, для этого открываем Milkshape, жмем вновь File->Import->Unreal PSK/PSA и выбираем меш с разрешением *psk.
Видим, что NPC импортировался в Milkshape, но без текстур. Натягиваем текстуры и сохраняем модель File->Export->Half-Life SMD, но в этот раз выбираем "Reference".
9) Сверяем названия костей в *smd файлах.
Для этого открываем по очереди все *smd файлы анимаций и *smd файл меша.
Названия костей в анимациях должны совпадать с названиями костей в меше, если у вас не так - сравнивайте названия и правьте.
10) Подготавливаем к компиляции, пример QC файла:
Компилируем - открываем Milkshape, жмем Tools->Compile qc file и выбираем наш *qc файл. Ждем.
11) После успешной компиляции, как правило, придется подбивать размер модели до необходимого.
В случае не успешной компиляции и ошибок вида "Bogus bone index", возвращаемся к пункту 9.
Я решил написать гайд по импорту моделей из Lineage 2 конкретно под GoldSrc.
1) Экспортируем меши и анимации из клиента Lineage 2 (папка animations, формат *ukx) через umodel
Для этого создаем батник:
Код:
umodel.exe -game=l2 -export -all LineageMonsters3.ukx
pause
2) Достаем меш (SkeletalMesh, формат *psk) и анимацию (MeshAnimation, формат *psa) необходимого NPC из соответствующих папок после экспорта
3) Открываем соответсвующий архив текстур в клиенте (по примеру батника это - LineageMonstersTex3.utx) через L2ViewUTX
4) Сохраняем все текстуры от NPC (по умолчанию будут в dds)
5) Далее необходимо нарезать анимации для NPC. Запускаем DN UnPSA Toolkit
Жмем Open и выбираем наш *psa файл.
Жмем Save All Animations to Multiple Files и видим, что у нас уже есть все анимации по отдельности.
6) Следующим этапом будет редактирование текстур (создание прозрачности и сохранение в формате, который поймет GoldSrc).
Для этого открываем *dds текстуры нашего NPC в Photoshop или любом удобном для вас редакторе, затем:
- закрашиваем прозрачные области сплошным цветом (например черным);
- переводим в режим индексированного цвета
- сохраняем как bmp 8 bit
7) Теперь нам нужно "нормализовать" анимации или говоря иначе - привести их в понятный для GoldSrc формат.
Для этого открываем Milkshape, жмем File->Import->Unreal PSK/PSA и выбираем одну из анимаций.
Теперь жмем File->Export->Half-Life SMD, выбираем в настройках сохранения "Sequence", жмем ОК.
Таким же образом необходимо пере-сохранить каждую анимацию NPC.
В самом конце удаляем *qc файлы анимаций - они нам не понадобятся.
8) Переходим к импорту меша, для этого открываем Milkshape, жмем вновь File->Import->Unreal PSK/PSA и выбираем меш с разрешением *psk.
Видим, что NPC импортировался в Milkshape, но без текстур. Натягиваем текстуры и сохраняем модель File->Export->Half-Life SMD, но в этот раз выбираем "Reference".
9) Сверяем названия костей в *smd файлах.
Для этого открываем по очереди все *smd файлы анимаций и *smd файл меша.
Названия костей в анимациях должны совпадать с названиями костей в меше, если у вас не так - сравнивайте названия и правьте.
10) Подготавливаем к компиляции, пример QC файла:
Код:
$modelname "dwarf_ghost.mdl"
$cd ".\"
$cdtexture ".\"
$scale 1.0
$cliptotextures
$origin 0 0 12
$bbox 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$cbox 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$eyeposition 0.000000 0.000000 0.000000
$body "www.taey.net" "dwarf_ghost"
$sequence "Wait" "Wait" fps 30 loop
$sequence "Walk" "Walk" fps 30 loop
$sequence "run" "run" fps 30 loop
$sequence "atk01" "atk01" fps 30 loop
$sequence "atkwait" "atkwait" fps 30 loop
$sequence "death" "death" fps 30
$sequence "deathwait" "deathwait" fps 30 loop
// End of QC script.
11) После успешной компиляции, как правило, придется подбивать размер модели до необходимого.
В случае не успешной компиляции и ошибок вида "Bogus bone index", возвращаемся к пункту 9.