Если у вас есть модель с анимациями смело пропускаем эту часть урока
Hammer Editor (связанной с любой игрой, будь это Half-Life 2 или Portal) Crowbar (декомпилятор моделей MDL/VTF-текстур) Прямые руки
Вкратце с помощьючего мы сделаем кат-сцены: Мы будем использовать готовую модель как главную, через viewcontrol (статья на англ!) , а саму камеру прикреплять к кости через attachments.
И так приступаем, ведь мы за этим пришли?
Часть первая: Создание/аминирование модели
Для начала открываем наш редактор моделей (для урока я не использовал его, но для простоты возьмите Blender, это ваше дело какой выбирать) Но пока отложим редактор на потом. Откройте Crowbar.
Видим перед собой не знакомое окно... Но знания английского , и примерно по логике должны помочь. Но я объясню, ведь я не зря тут?
Эта программа нужна чтобы декомпилировать (Произвести производить процедуру восстановления программы или файла, т.е перевести его в исходное состояние) нашу модель (в данном случае mdl в smd) Теперь жмем на вкладу "Decompile (Декомпиляция)":
Отмечу главные галочки, которые нам будут нужны (если вы не знаете , то не делайте)
И так, указываем путь к нашей модельки в MDL file or Folder.. которую хотим анимировать (я возьму модель повстанца из Half-Life 2) Затем в разделе "Output Folder" указываем тип куда мы будет уже готовый результат декомпиляции, если выбрать SubFolder (файл smd будет перемещен в подпапку каталога программы, в подпапку расположенную рядом с моделью), если выбрать Full Patch (свой , кастомный путь куда переместится файл).
Дальше настроив путь, нажимаем "Decompile":
После успешной декомпиляции, в консоли откладки (или типа Debug) появится сообщение:
Writing data finished.
... Decompiling ".\male_ss.mdl" finished.
Значит мы успешно декомпилировали модель! Теперь... а теперь не бежим в Blender... такие радостные они... Еще один момент, в Blender/Других редакторах не поддерживается smd!
Поэтому нужно качать дополнительный плагин (требование к версии: 2.74+)
А добавляется плагин в Blender:
Дальше нажимаем Import - дальше чтобы добавить модель.
После всего, мы должны её скомпилировать... После нужно нашу анимированную модель переместить в папку anim (главное чтобы вы при декомпиляции не убрали галочку, иначе папка не появится). Т.к мы должны как-бы добавить анимация для модели, а не заменять её.
Дальше делаем также, но уже не mdl,а с QC. Этот файл содержит данные о модели для компиляции. Но его нужно изменить сперва.
Видим разные строчки начинающиеся с
$Sequence
дальше следует название. Нужно добавить этот текст:
Дальше если нужно измените другие строчки. Можно изменить кол-во кадров в секунду (fps) также.
- После настроек сохраняем этот файл, и открываем его в программе Crowbar, перейдя уже во вкладу Compile. Там примерно также, указываем путь куда компилировать модель. Указываем игру для какой модели (для Steam) и другие пункты. Дальше просто жмем Compile и все. Мы успешно скомпилировали нашу модель!
Часть вторая:
После создания модели, мы должны добавить ее на вашу карту и сделать играбельной. Закрываем Blender, и вместе с ним Crowbar. Открываем Hammer Editor.
Теперь переходим к важной, и той части, с которой и будем делать анимации. Нужно выбрать место откуда и где вы будете видеть анимацию.
Ставим саму модель...
Ставим point_viewcontrol
Ставим logic_auto
Обращаемся к ентити point_viewcontrol и указываем ей любое имя и модель которая должна быть в Parent:
Теперь указываем название самой модели. Все.
Дальше мы заходим в Outputs ентити logic_auto. Там добавляем новый.
Указываем всё как в данном тексте:
My output named: OnMapSpawn
Target entities named : Название вашей камеры привязанной в parent к модели
Via this imput: SetParentAttachment
With a parameter override of:eyes (узнать куда вы хотите привязать, можно через Half-Life Model Viewer)
After a delay in seconds of: 0.00 Fire once only: No
Теперь снова жмем на "Add" и указываем все также:
My output named: OnMapSpawn
Target entities named : Название вашей модели
Via this imput: SetAnimation
With a parameter override of: Название вашей созданной анимации
After a delay in seconds of: 0.00 Fire once only: No
Если камера не включается по каким-то причинами, добавьте еще одну функцию:
My output named: OnMapSpawn
Target entities named : Название вашей камеры привязанной в parent к модели
Via this imput: Enable
With a parameter override of: <none>
After a delay in seconds of: 0.00 Fire once only: No
Но это еще не все. Нужно настроить саму камеру: Открываем свойства камеры и открываем вкладку "Flags" Включаем/отключаем все флаги как на скриншоте:
УБЕРИТЕ ГАЛОЧКУ START AT PLAYER (иначе камера будет начинать не от модели, а от глаз игрока)
В общем все, дальше просто жмем F9/или на значок
вашего Hammer.
Заключение
После компиляции мы увидим сразу нашу анимацию.. Можно сделать так , чтобы она проигрывалась через триггер например. В итоге у нас получилось вот так:
Пишите, если что-то вызывает затруднения или проблемы.
Интересный туториал, спасибо. Эх, хотелось бы найти туториалы по портированию регдолов с созданием костей и привязкой их к скину в 3дсе. На фп все уже старое и без скриншотов...
Лeна (11.12.2017, 16:57) писал: с созданием костей и привязкой их к скину в 3дсе
Правда, только в Blender. Уже однажды я писал туториал по портированию моделей... Но это было давно. И скоро может быть я сделаю его. Может быть и завтра.