Быстрая регистрация



{inform_news}
  • 81CK-AMXX-MODES-ZPE #348 (stable)
  • 81CK-AMXX-MODES-ZPE #347 (stable)
  • 81CK-AMXX-MODES-ZPE #346 (stable)
  • 81CK-AMXX-MODES-ZPE #345 (stable)


  • » » » Добавление физических эффектов в Valve Hammer Editor
    13
    ноя
    2013

    Добавление физических эффектов в Valve Hammer Editor 

    Категория: Статьи, Автор: flymik24, Просмотров: 8 251



    Метод вкратце

    Импортируем нашу карту в Блендер, с помощью физического движка Bullet генерируем анимацию, компилируем модель и добавляем ее обратно на карту в виде энтити. Мы не будем использовать BMOD, да и весь AMXX в целом. В общем смотрим


    Что нам понадобится?

    • Valve Hammer Editor – редактор карт очевидно;
    • BSP Viewer – понадобится для экспорта карты в 3ds;
    • Blender – прекрасный 3Д редактор со встроенным Bullet’ом;
    • rba2ba – скрипт на питоне, написанный чехом Jonatan Matejka. Потребуется для генерации скелета будущей модели ( Скачать: rba2ba.rar [959 b] (cкачиваний: 11) );
    • Blender SMD Tools – для экспорта нашей работы в привычный SMD;
    • smdfix – исправляет названия текстур и UV карту в SMD ( Скачать: smdfix.rar [876 b] (cкачиваний: 13) ).


    Настройка нашей сцены в Valve Hammer Editor

    Открываем карту в Хамере. Предположим, нам нужно добавить красивый эффект падения ящиков из-за сломанной опоры. Для этого рисуем башню из трех брашей с текстурами деревянных ящиков и пару дощечек под ней. Одна из опор лопается. У автора оригинальной статьи получилось вот так:



    Компилируем нашу карту в bsp (советую установить параметр -subdivide 512) и открываем ее в BSP Viewer’е.



    Жмем File -> Export -> 3DS File. Оставляем галку на Export Materials. Сохраняем 3ds файл. Если вы собрали карту вместе с текстурами (исключили wad файл), то жмем File -> Export -> Bitmaps. Параметры в опциях можно оставить без изменений. Если карта все же берет материалы из wad’а, то вам придется распаковать содержимое архива при помощи специальной для этого программой (подойдет Wally или GCFScape). Теперь, когда у вас 3ds со всеми bmp-текстурами, можно переходить к следующему шагу.


    Моделирование в Blender

    Перед тем как приступить к самому сочному, советую изучить интерфейс и управление в этой среде. Пользователям с базовыми знаниями будет намного легче чем новичку, открывшему впервые Блендер.

    Установите и запустите редактор. Подключите плагины rba2ba и Blender SMD Tools (File -> User Preferences -> Addons и жмем на Install from File). Теперь импортируем наши ящики в Блендер. Жмем Fule -> Import -> 3D Studio (.3ds). Переходим в Bledner Game.

    Добавление физических эффектов в Valve Hammer Editor

    Выделяем любой ящик. Переходим к Physics в свойствах объекта (в правом меню последняя иконка).



    Устанавливаем Physics Type: на Rigid Body, и Collision Bounds на Box (или Convex Hull если меш не имеет примитивной формы). Дополнительно можно установить массу (Mass) объекту. Тоже самое делаем и с другими ящиками.

    Выделяем все ящики и вводим комбинацию клавиш Shift+Ctrl+Alt+C, выбираем Origin to Geometry.

    Переходим снова в правое меню и на этот раз щелкаем по иконке World



    Здесь мы можем изменить гравитацию (Gravity), FPS и физические шаги (Physics Steps). Удаляем дощечку под ящиками. Теперь нажимаем на P. Башня рассыпалась? Замечательно. Esc вернет вас обратно в режим редактирования. Если ящики будут проваливаться под землю, измените параметр Substeps или выделите поверхность на которую падают ящики и задайте соответствующий Collision Bounds.



    Когда анимация физики будет вас устраивать, установим галку на Game -> Record Animation. Снова запускаем анимацию. Далее удаляем все объекты кроме ящиков. Выделяем оставшиеся коробки и жмем на пробел. В поле ввода набираем Rigid body anim to bone anim (это установленный скрипт нашего чешского друга и автора оригинала этой статьи).



    После группируем меши комбинацией Сtrl+G. Теперь File -> Export -> Source Engine, Scene as configured. Пишет ошибку? Проверьте в свойствах сцены (правое меню, иконка с шаром и цилиндром) указан ли путь к директории для экспорта (Export Path). Не забудьте установить формат SMD.

    Запускаем smdfix через батник или командную строку. Можете импортировать полученные смд (в привычном 3д редакторе) и проверить анимацию. Если вас все устраивает, то переходим к заключающим шагам.


    Компиляция MDL

    Создаем текстовый документ расширения .qc и записываем туда следующий код:
    $cd "." // относительный Путь к ресурсам
    $body "body" "out" // body - название меши в mdl, out - путь к smd меши
    $sequence "idle" "anims/ArmatureAction" fps 50 // idle - название анимации в mdl,
    // anims/ArmatureAction - путь к smd анимации,
    // fps - частота кадров в анимации

    Подробнее о qc скриптинге можно почитать вот тут

    Компилируем наш qc код компилятором для HL (через studiomdl.exe). Возможно, может появиться ошибка при компиляции из-за ограничений в кол-ве кадров в анимации. В таком случае придется вернуться к Блендеру и понизить значение FPS в параметрах сцены.

    Скачать компилятор: kHED.zip [2.32 Mb] (cкачиваний: 11)


    Импорт анимации в Valve Hammer Editor

    Теперь мы можем вернуться к Valve Hammer Editor'у. Открываем нашу карту и заменяем старые статические браши ящиков на новую энтити класса “mdl_cycler” . Устанавливаем параметры sequence 1, framerate 1. Далее я не буду расписывать как добавлять триггеры и указывать их на энтити. Все это можно найти в многочисленных мануалах по Valve Hammer Editor. Для расчета времени продолжительности анимации можно воспользоваться формулой: время = кол-во кадров/fps, где кол-во кадров можно посмотреть в mdl-вьювере или открыв текстовым редактором smd анимации.


    Демонстрация



    Источники


    Первоисточник: Link
    Авторский перевод сайта Next21.ru: Link

    Как конвертировать модели из игры TES IV: Oblivion
    В этой статье я поделюсь с моделерами собственным опытом о том как
    Сборник программ для мапинга
    Программы не обходимые для создания карт для CS1.6.
    Подтягиваем текстуры у моделей
    Подтягиваем текстуры у моделей Подробная статься о подтягивание

    Комментарии



    Публикаций: 8
    Комментов: 544


    Комментарий #1 | Добавлен: 13 ноября 2013 20:11
    Молодец - указал оригинальные ссылки =)

    Жалоба          


    Публикаций: 5
    Комментов: 253


    Комментарий #2 | Добавлен: 13 ноября 2013 20:49
    Псевдо-физических эффектов, ибо это тупо модели выходят.
    З.Ы: За 3-ри года я ни на одном сайте не видел туторы про анимации на модели.
    Впринцыпе не особо сложно, но надо использовать новые компиляторы для правильных теней.

    Жалоба          


    Публикаций: 14
    Комментов: 436


    Комментарий #3 | Добавлен: 13 ноября 2013 21:05
    Очень понравилось. Почему бы такое не показать лет 5 назад?)

    Жалоба          


    Публикаций: 5
    Комментов: 253


    Комментарий #4 | Добавлен: 13 ноября 2013 22:09
    Цитата: Барс
    Очень понравилось. Почему бы такое не показать лет 5 назад?)

    Никто этим заниматься не будет.

    Жалоба          


    Публикаций: 20
    Комментов: 141


    Комментарий #5 | Добавлен: 13 ноября 2013 22:28
    Смотрится отлично, но это все только модель.
    Жалко что разработчики не добавили Havok в cs 1.6

    Жалоба          


    Публикаций: 0
    Комментов: 33


    Комментарий #6 | Добавлен: 13 ноября 2013 22:35
    Изобретая велосипед,вперед-вперед к CSS! А там глядишь и до GO не далеко XD

    Жалоба          


    Публикаций: 20
    Комментов: 959


    Комментарий #7 | Добавлен: 13 ноября 2013 23:06
    mdl_cycler? Что за бред? Нету такого вообще.




    Мои сервера:
    fraghost.ru:27017 - Zombie plague v1.3
    fraghost.ru:27015 - Deathmatch
    188.134.76.17:27026 - anitalink DM+Что попало

    Жалоба          


    Публикаций: 5
    Комментов: 253


    Комментарий #8 | Добавлен: 13 ноября 2013 23:21
    Цитата: ZombieSource
    mdl_cycler? Что за бред? Нету такого вообще.

    Да ладно, ясно что это cycler_sprite, видино fgd стоит другой.

    Жалоба          


    Публикаций: 20
    Комментов: 959


    Комментарий #9 | Добавлен: 14 ноября 2013 10:36
    Цитата: De30Kcu

    Да ладно, ясно что это cycler_sprite, видино fgd стоит другой.

    Бред какой-то, ставить модельки через cycler_sprite? Хотя пару раз видел такое, когда сам так сделал, хаммер крашнулся. Да и полюбому не понятно как изменить анимацю с idle на другую, так как trigger_changevalue в CS вроде нету




    Мои сервера:
    fraghost.ru:27017 - Zombie plague v1.3
    fraghost.ru:27015 - Deathmatch
    188.134.76.17:27026 - anitalink DM+Что попало

    Жалоба          


    Публикаций: 43
    Комментов: 431


    Комментарий #10 | Добавлен: 14 ноября 2013 12:33
    Всю жизнь через cycler_sprite модели выставлял.
    По сабжу бред, это только если в недоступном для игрока месте выстраивать, ибо через все эти "динамческие" объекты можно спокойно пройти. Либо максимум для мелких объектов использовать, типа разрушения плитки и прочего, но опять же, слишком так сказать костыльный метод. Надоест мучаться.




    Мой канал на youtube: DimeX-By
    Infection Mode - Первая попытка создать зомби шутер на андроид.

    Жалоба          


    Публикаций: 659
    Комментов: 1 893


    Комментарий #11 | Добавлен: 15 ноября 2013 09:47
    Долго и муторно нужно этим заниматься дабы добиться малейшего успеха. Не думаю что оно того стоит.







    Жалоба          


    Публикаций: 2
    Комментов: 150


    Комментарий #12 | Добавлен: 18 ноября 2013 14:57
    Цитата: DOK_BATCOH
    Смотрится отлично, но это все только модель.
    Жалко что разработчики не добавили Havok в cs 1.6

    Может потому что на момент релиза 1.6 Havok и не существовало еще.

    Жалоба          


    Публикаций: 0
    Комментов: 18


    Комментарий #13 | Добавлен: 19 июля 2014 21:58
    В зомби моде можно всякие ловушки делать спасибо :08: автору

    Жалоба          


    Публикаций: 0
    Комментов: 4


    Комментарий #14 | Добавлен: 23 марта 2019 12:46
    Автор, научись читать заголовок оригинальной статьи перед добавлением сюда. Это для Counter-Strike, а не для Counter-Strike: Source. Во вторых, в css по дефолту есть уже динамические модельки. Даже по графике заметно, что это Counter-Strike.

    Жалоба          

    Информация


    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.