Перейти к содержанию
  • Переводчик: Truewolf

    Создаем коллизии для статиков в Skyrim LE

     Для начала следует обозначить пару моментов. Во первых, у вас в сцене должен быть 1 объект и соответственно 1 NiTriShape в NifSkope. Для объектов с большим количеством NiTriShape, данный способ не подходит. Во вторых, не советую начинать с импорта модели через Obj формат, как это показано в оригинале. В этом случае, у вас могут сбиться параметры сглаживания и выйдет не совсем то, чего вы ожидали.

    Итак, начнем. Запускаем сцену с вашей моделью в 3Ds Max. У меня пусть будет стол. В начале следует его поставить в начало осей координат. для этого выбираем инструмент Move и значение осей X и Y сбрасываем на 0. Ось Z необходимо отредактировать самим, иначе начало осей координат будет находиться
    посередине модели.

    1.png

    После этого можем экспортировать модель в Nif формат. Настойки экспорта:

    2.png

    Далее нам понадобится Nif, содержащий информацию о коллизии и текстурах. Можете взять его отсюда [attachment=14702:CollisionMesh.rar]
    Открываем нашу модель и выделяем ветку NiTriShape. Нажимаем ПКМ по ней, далее Block -> Copy Branch.

    3.png

    Затем открываем файл из архива, выделяем BSFadeNode, нажимаем ПКМ, Block -> Paste Branch.

    4.png

    Свой nif файл можете после этого закрыть, далее пойдут работы только с CollisionMesh.nif
    Прежде чем продолжить, отредактируйте твою ветку NiTriShape. удалите из неё NiMaterialProperty и BSLightingShaderProperty. Для этого выделите эти ветки и нажмите на Block -> Remove Branch. В итоге в вашем NiTriShape должно остаться только NiTriShapeData.

    5.png

    Далее выделите NiTriShape, промотайте Block Detalis в самый низ и найдите вкладку Property или BSProperty. Разверните её и вместо None в первой вкладке напишите номер дефолтной ветки BSLightingShaderProperty, которая была сразу в файле.

    6.png

    Это действие перенесет правильно настроенную ветку с текстурами к вашей модели. Далее пройдите во вкладку BSShaderTextureSet и пропишите пути к текстурам. Прописывается путь к непосредственно текстуре и нормал мапу - текстура_n. Путь к текстуре должен выглядеть так - textures\[папка вашего мода, если есть]\texture.dds. Удалите лишние строчки. У меня получилось вот так.

    7.png

    Далее перейдем непосредственно к Коллизии. Сохраните свою модель в папку с моделями скайрима. Data\Meshes\[ваша папка].
    После этого нажмите ПКМ по модели и выберите Transform -> Scale Verticles. Установите значение на 0.1 и нажмите Scale.

    8.png

    Затем нажмите снова ПКМ по модели и выберите Havok -> Create Convex Shape. Так же установите значение на 0.1.

    9.png

    Это действие создаст ветвь 9 bhkCollisionObject во вкладке 0 BSFadeNode. скопируйте вашу Коллизию, щелкнув по 9 bhkCollisionObject ПКМ и выбрав Block -> Copy Branch. После этого загрузите сохраненный перед созданием коллизии Nif файл.

    10.png
    Удалите из вкладки BSFadeNode bhkCollisionObject

    11.png
    Теперь нажмите на BSFadeNode ПКМ -> Block -> Paste Branch. Далее выберите в окне Block Detalis BSFadeNode найдите строчку Collision Object и вместо None вбейте туда номер строчки вашего колизиона.

    12.png

    Далее кликните ПКМ по модели, выберите flags, в выпадающем меню выберите Continue и нажмите Accept.

    13.png

    Сохраните файл. Во вкладке bhkCollisionObject будет bhkConvexVerticlesShape. Это и есть ваш коллизион. Далее зайдите в конструктор, создайте там новый объект, поместите в игру и зайдите проверить, работает ли коллизия.

    14.png

    Как видите, мой бомжеватый норд вполне вальяжно устроился на столике, значит коллизия в порядке.
    В данном уроке мы рассмотрели, как экспортировать в игру статические объекты с адекватным отображением что текстур, что коллизий. На этом урок подошел к концу. Удачи в творчестве, до встречи.

    PS.
    Данный процесс создания коллизии для Скайрима несколько грязный и ограниченный, но пока что другого и менее геморного варианта не нашел. впоследствии выложу статью по внедрению своего оружия в игру, уже собственного производства. И буду искать варианты по созданию коллизий для статиков с меньшими ограничениями.

    • Нравится 8

    Обратная связь

    Рекомендуемые комментарии

    alexeilm

    Опубликовано

    Можно вопрос.

    "Transform -> Scale Verticles. Установите значение на 0.1 и нажмите Scale." , т.е. по всем трем осям. Но, в случае "Havok -> Create Convex Shape. Так же установите значение на 0.1." я получаю 0 коллизий и ничего не создается.

    Насколько критично это значение?

    Можно ли оставить 0,25 - как предлагает Хавок по умолчанию?



    Для публикации сообщений создайте учётную запись или авторизуйтесь

    Вы должны быть пользователем, чтобы оставить комментарий

    Создать аккаунт

    Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

    Регистрация нового пользователя

    Войти

    Уже есть аккаунт? Войти в систему.

    Войти

×
×
  • Создать...