tag:blogger.com,1999:blog-2021506007847610162024-02-07T09:20:53.598+04:00@perture@perturehttp://www.blogger.com/profile/03908481308241042705noreply@blogger.comBlogger6125tag:blogger.com,1999:blog-202150600784761016.post-62955940353422869272017-08-13T12:35:00.000+04:002017-08-13T16:18:19.024+04:00Skyrim Animation Tools<div dir="ltr" style="text-align: left;" trbidi="on">
Экспериментальные функции по импорту в редактор 3ds Max бинарных файлов движка Havok,<br />
используемых для хранения скелетов и анимаций.<br />
<br />
<a name='more'></a><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/N-EwpEdbQpI/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/N-EwpEdbQpI?feature=player_embedded" width="320"></iframe></div>
<br />
<br /></div>
@perturehttp://www.blogger.com/profile/03908481308241042705noreply@blogger.com25tag:blogger.com,1999:blog-202150600784761016.post-84452438034799765012017-06-12T13:37:00.000+04:002017-06-12T13:37:12.182+04:00Обновление Nif Plugin beta3<div dir="ltr" style="text-align: left;" trbidi="on">
Небольшое обновление исправляющее выявленные недавно ошибки - сохранение в MaxNifTools.ini параметра "Weld Vertices" и определение директории 3ds Max при установке плагина. </div>
@perturehttp://www.blogger.com/profile/03908481308241042705noreply@blogger.com7tag:blogger.com,1999:blog-202150600784761016.post-55186548958448326632017-06-05T11:42:00.000+04:002017-06-05T13:20:49.563+04:00Дальнейшая разработка плагина<div dir="ltr" style="text-align: left;" trbidi="on">
За последние восемь месяцев было проделано немало работы над усовершенствованием Nif Plugin для редактора 3ds Max. Начиная от оптимизации программного кода, и заканчивая вводом новых функций. Что же еще можно от него ждать?<br />
<a name='more'></a>
<br />
Перспективы есть. Одна из самых интересных, это прямой импорт и экспорт персонажной анимации в двоичном формате (.hkx). Создание новой утилиты HavokEngine.exe открывает все возможности использования для этого движка Havok. Так же до совершенства можно довести возможности импорта и экспорта анимированных моделей. С анимацией не только геометрии, но и текстур. Это позволит с легкостью создавать модели с различными визуальными эффектами. Для этого же можно усовершенствовать Nif шейдер в редакторе, чтобы до экспорта видеть результат. Ну и конечно прочие улучшения, а так же написание подробных мануалов ко всем нововведениям.<br />
<br />
Объемы работы не маленькие, и на чистом энтузиазме силами одного человека трудно реализуемые. Материальная поддержка не только позволит реализовать всё задуманное, но и ускорит этот процесс. Если Вы хотите иметь в своём арсенале мощный инструмент для создания игровых моделей -<br />
<br />
<h3 style="text-align: center;">
<span style="font-size: large;"><a href="http://yasobe.ru/na/nifplugin" target="_blank">поддержите развитие проекта!</a></span></h3>
<br /></div>
@perturehttp://www.blogger.com/profile/03908481308241042705noreply@blogger.com3tag:blogger.com,1999:blog-202150600784761016.post-982354664816546472017-06-02T20:56:00.000+04:002017-06-03T07:24:30.845+04:00Обновление Nif Plugin beta2<div dir="ltr" style="text-align: left;" trbidi="on">
Устранены небольшие ошибки связанные с экспортом и добавлена дополнительная опция экспорта<br />
<ul style="text-align: left;">
<li>Исправлен экспорт цвета вершин для профиля Skyrim, а также экспорт связанных с этим флагов - SLSF2_VERTEX_COLORS и SLSF1_VERTEX_ALPHA;</li>
<li>Исправлен экспорт скина при скрытых костях скелета;</li>
<li>Исправлен экспорт флагов SLSF1_FACEGEN_DETAIL_MAP, SLSF1_FACEGEN_RGB_TINT, SLSF2_BACK_LIGHTING и SLSF1_MODEL_SPACE_NORMALS для шейдеров SkinTint и FaceTint;</li>
<li>Добавлена новая опция в диалоге экспорта - "Root Node Name". В выпадающем списке можно выбрать один из двух вариантов именования корневого нода в экспортируемом файле: по имени экспортируемого файла, или "Scene Root";</li>
</ul>
Скачать обновленную версию можно по ссылке в виджете "Файлы".<br />
<br />
<a href="https://apertureit.blogspot.ru/p/max-plugin-troubles.html">Страница для обсуждения ошибок плагина</a>.</div>
@perturehttp://www.blogger.com/profile/03908481308241042705noreply@blogger.com10tag:blogger.com,1999:blog-202150600784761016.post-31664770534032634222017-05-23T11:18:00.000+04:002017-06-23T07:42:41.883+04:00Использование bhkCollisionObject<div dir="ltr" style="text-align: left;" trbidi="on">
<div>
<div>
<div>
Попытки добавить в плагин возможность импорта и экспорта коллизий bhkCompressedMeshShape привели к тому, что пришлось пересмотреть всю логику работы с коллизиями, так как несовершенными мне показались и настройки коллизий в редакторе, и сам программный код в плагине. Таким образом были удалены все объекты и модификаторы связанные с настройкой коллизий и создан один новый объект - bhkCollisionObject, позволяющий в полной мере настроить различные варианты моделей столкновения. Обо всех нюансах его использования я и хочу рассказать.<br />
<br />
<a name='more'></a><br />
<span style="font-size: larger;"><span style="color: #9fc5e8;">Возможности bhkCollisionObject:</span></span><br />
<hr />
<ul style="text-align: left;">
<br />
<li>Импорт, экспорт и настройка моделей столкновения <span style="color: #b6d7a8;">bhkBoxShape</span>, <span style="color: #b6d7a8;">bhkSphereShape</span>, <span style="color: #b6d7a8;">bhkCapsuleShape</span>, <span style="color: #b6d7a8;">bhkConvexVerticesShape</span>, <span style="color: #b6d7a8;">bhkNiTriStripsShape</span>, <span style="color: #b6d7a8;">bhkListShape</span>, <span style="color: #b6d7a8;">bhkPackedNiTriStripsShape</span> и <span style="color: #b6d7a8;">bhkCompressedMeshShape</span>;</li>
<li>Расчет MOPP кода для <span style="color: #b6d7a8;">bhkPackedNiTriStripsShape</span> и <span style="color: #b6d7a8;">bhkCompressedMeshShape</span>;</li>
<li>Построение оболочек <span style="color: #b6d7a8;">bhkBoxShape</span>, <span style="color: #b6d7a8;">bhkSphereShape</span>, <span style="color: #b6d7a8;">bhkCapsuleShape</span> и <span style="color: #b6d7a8;">bhkConvexVerticesShape</span> вокруг геометрических объектов с возможностью копирования этих оболочек в новый геометрический объект;</li>
<li>Настройка параметров <span style="color: #b6d7a8;">bhkRigidBody</span>;</li>
<li>Визуализация и настройка центра массы для динамических объектов;</li>
<li>Расчет инерции на основе объёма модели и указанной в <span style="color: #b6d7a8;">bhkRigidBody</span> массы;</li>
</ul>
</div>
<br />
<span style="font-size: larger;"><span style="color: #9fc5e8;">Настройка модели столкновения:</span></span><br />
<hr />
<br />
Для примера разместим в сцене банальный чайник. И добавим вспомогательный объект <span style="color: #b6d7a8;">bhkCollisionObject</span>, находящийся на панели Create | Helpers | NifTools. Выделив его и перейдя на панель Modify увидим несколько свитков с параметрами.<br />
<br />
<u><span style="color: orange;">Свиток «Parameters»</span></u><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3-1dd47kdCeTE4PK6VoItWoVHVs46Uz1zZCXAGKlUbsTyIKCKTvxYOaJVprk7tsEl_4GWRGR4gT5a2JW7lnTgbpKYYJDL0k2ox1VqubV6m2TXyrSuTErf2kjijymlPeB3HIeChW4lskY/s1600/3dsmax_2017-05-23_08-59-18.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3-1dd47kdCeTE4PK6VoItWoVHVs46Uz1zZCXAGKlUbsTyIKCKTvxYOaJVprk7tsEl_4GWRGR4gT5a2JW7lnTgbpKYYJDL0k2ox1VqubV6m2TXyrSuTErf2kjijymlPeB3HIeChW4lskY/s1600/3dsmax_2017-05-23_08-59-18.png" /></a></div>
<ul style="text-align: left;">
<li><span style="color: #8e7cc3;">Collision Type</span>: выбор базового типа коллизии, «Simple Shape» для простых моделей, таких как <span style="color: #b6d7a8;">bhkBoxShape</span>, <span style="color: #b6d7a8;">bhkSphereShape</span>, <span style="color: #b6d7a8;">bhkCapsuleShape</span>, <span style="color: #b6d7a8;">bhkConvexVerticesShape</span>, <span style="color: #b6d7a8;">bhkNiTriStripsShape</span> либо нескольких простых моделей объединенных в <span style="color: #b6d7a8;">bhkListShape</span>. «Packed Strips Shape» для модели <span style="color: #b6d7a8;">bhkPackedNiTriStripsShape</span>, и «Compressed Mesh» для <span style="color: #b6d7a8;">bhkCompressedMeshShape</span>;</li>
<li><span style="color: #8e7cc3;">Collision Meshes</span>: лист с геометрическими объектами используемыми для построения модели столкновения. Добавлять и удалять объекты можно кнопками «Add» и «Remove» находящимися ниже листа. Если в листе несколько объектов при базовом типе «Simple Shape», то при экспорте автоматически будет создан <span style="color: #b6d7a8;">bhkListShape</span>. При добавлении объекта в этот лист видимой остается только его сетка, в соответствующих режимах просмотра;</li>
<li><span style="color: #8e7cc3;">Edit Shape</span>: переход в режим настройки объекта из листа. В этот режим так же можно перейти выбором соответствующего подуровня целевого объекта. Редактируется выделенный в данный момент в листе объект. В сцене при этом его сетка становится красной. Выделять объекты можно как выбором в листе, так и в сцене.<span style="color: red;"> Все ниже расположенные элементы становятся доступны только в этом режиме</span>; </li>
<li><span style="color: #8e7cc3;">Material</span>: выбор материала для объекта;</li>
<li><span style="color: #8e7cc3;">Simple Shape Type</span>: при базовом типе «Simple Shape» из этого выпадающего списка можно выбрать тип примитива. Исключение составляют объекты типов Box, Sphere и Capsule. Для них данный пункт предопределен и несменяем.<span style="color: red;"> Следующие два пункта доступны только при выборе bhkConvexVerticesShape</span>;</li>
<li><span style="color: #8e7cc3;">Inflation</span>:"раздувание" выпуклой оболочки. Используется для корректировки её габаритов, может иметь значение от -10 до 10.</li>
<li><span style="color: #8e7cc3;">Vertices</span>: количество вершин из которых будет состоять выпуклая оболочка. Чем вершин больше - тем точнее оболочка будет соответствовать исходному объекту. Чем их меньше - тем выше производительность в игре.</li>
<li><span style="color: #8e7cc3;">Export Source Mesh</span>: при установке этого чекбокса исходный геометрический объект будет экспортирован как геометрия. В противном случае он экспортироваться не будет.</li>
<li><span style="color: #8e7cc3;">Clone Mesh</span>: нажатие на эту кнопку создаёт копию геометрии созданной на основе исходной, и заменяет в листе исходную на вновь созданную. При этом в сцене она появляется как новый геометрический объект.</li>
</ul>
Свиток <span style="color: orange;"><u>«Rigid Body Parameters» </u></span><br />
<br />
Полной информации по всем параметрам пока нет, возможно будет позже. Пока можно посмотреть как настроены ванильные модели подобного типа и настраивать по ним. Отмечу лишь пункт «Mass». Это масса модели в американских футах. Если создаем динамическую модель, то до экспорта надо выставить значение, поскольку оно повлияет на расчет инерции.<br />
<br />
Свиток <span style="color: orange;"><u>«Center Of Mass»</u></span><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0CXIldF49xxVFUsslrOjXRz9dTWnXdbFcjhyphenhyphenXqOZJ_MJ4ktUWvNanrCH87LvewFibIwGB9uXw_nP_xdCtIrZPe7In6656N-IUyNTT_IHGPVsUmmx6hurcEnE91o5hbPONXt9TDK9eUhI/s1600/3dsmax_2017-05-23_10-25-33.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0CXIldF49xxVFUsslrOjXRz9dTWnXdbFcjhyphenhyphenXqOZJ_MJ4ktUWvNanrCH87LvewFibIwGB9uXw_nP_xdCtIrZPe7In6656N-IUyNTT_IHGPVsUmmx6hurcEnE91o5hbPONXt9TDK9eUhI/s1600/3dsmax_2017-05-23_10-25-33.png" /></a></div>
<ul style="text-align: left;">
<li><span style="color: #8e7cc3;">Edit Center Of Mass</span>: включает режим редактирования центра массы модели столкновения. В этот режим так же можно перейти выбором соответствующего подуровня целевого объекта. При включении данного режима становится виден маркер центра массы, если масса модели выше ноля. При этом в редакторе устанавливается режим передвижения. Таким образом можно двигать маркер в сцене манипулируя мышью. Так же можно менять его положение вводя значения в расположенные ниже поля с координатами;</li>
<li><span style="color: #8e7cc3;">Calculate from Mesh</span>: при выборе данного пункта центр массы рассчитывается исходя из объема модели и помещается в цент объема. Если в листе насколько объектов - то рассчитывается общий объём. При редактировании или смещении объектов положение маркера корректируется;</li>
<li><span style="color: #8e7cc3;">Use Pivot</span>: при выборе этого пункта центр массы помещается в опорную точку объекта, либо в среднее значение нескольких точек, если в листе несколько объектов. При редактировании или смещении объектов положение маркера так же корректируется;</li>
<li><span style="color: #8e7cc3;">Local Offset</span>: в этом положении центр массы может иметь произвольное установленное пользователем значение и не зависит от задействованных объектов.</li>
</ul>
</div>
Свиток <span style="color: orange;"><u>«Display Parameters»</u></span><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-ClQXsQLxv2Q20rxNYhaGTTkKqvntHCDBD3JGblvx_XAdtGvvq_G4wLXS9VqbP2T2fKg9AT34NfXh8VDIuoaLEKJkCZ6_jHFOHXeaRqAx4vhjq7n6z-XauqePvSwc9VCoIxvbR61B_J0/s1600/3dsmax_2017-05-23_10-42-12.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-ClQXsQLxv2Q20rxNYhaGTTkKqvntHCDBD3JGblvx_XAdtGvvq_G4wLXS9VqbP2T2fKg9AT34NfXh8VDIuoaLEKJkCZ6_jHFOHXeaRqAx4vhjq7n6z-XauqePvSwc9VCoIxvbR61B_J0/s1600/3dsmax_2017-05-23_10-42-12.png" /></a></div>
<ul style="text-align: left;">
<li><span style="color: #8e7cc3;">Display Hull</span>: включает отображение полигонов модели столкновения;</li>
<li><span style="color: #8e7cc3;">Z Buffer</span>: отключает сквозную прорисовку граней;</li>
<li><span style="color: #8e7cc3;">Hide Source Mesh</span>: скрывает исходный объект в зависимости от настроек видовых экранов;</li>
<li><span style="color: #8e7cc3;">Show Center of Mass</span>: показывает маркер центра массы, при значении массы выше ноля.</li>
</ul>
</div>
<br />
<hr />
<br />
Настроив необходимые параметры можно экспортировать модель и проверить результат.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihuPOoZE073mRaEF8_fegIO3eMY_bclKFiKsSsNmI7CO76Wl4keec-x6-qalolMZI1gY5rI40LWpfBgkjLCrzX8X1Z8jcFZebDKxlUK_AACWbN2hNdRhQeTdxG3ed8OIKmPdA1jCVa4gA/s1600/3dsmax_2017-05-23_10-51-42.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="384" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihuPOoZE073mRaEF8_fegIO3eMY_bclKFiKsSsNmI7CO76Wl4keec-x6-qalolMZI1gY5rI40LWpfBgkjLCrzX8X1Z8jcFZebDKxlUK_AACWbN2hNdRhQeTdxG3ed8OIKmPdA1jCVa4gA/s640/3dsmax_2017-05-23_10-51-42.png" width="640" /> </a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAVydyaZM4LzH8IlUSjGEAWnwOYxzG0ZVUaO2HBWBxckg7N9CYVZURrxVtxBCAc_J2JQjp5QgdpXWGXcflr0MT-D1updsz9ahFkplDXH4sUiZceX9y4QhXPE6cDI2XZi4fpTf-lNmQTaw/s1600/3dsmax_2017-05-23_10-52-28.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAVydyaZM4LzH8IlUSjGEAWnwOYxzG0ZVUaO2HBWBxckg7N9CYVZURrxVtxBCAc_J2JQjp5QgdpXWGXcflr0MT-D1updsz9ahFkplDXH4sUiZceX9y4QhXPE6cDI2XZi4fpTf-lNmQTaw/s400/3dsmax_2017-05-23_10-52-28.png" width="220" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWDJTzeCsl5SMg9bUKCH9Xb6ku5FpgRcGvNXso-6L3Bw6vni8QBbg_QV4AUAyCO919VkXvCBK4KacLSwbCxO3k_fxufaclqB8VZCCBFQMFB_2gTQsIB4nrvP-n6KAYZ6bC-o8TgWdb0uk/s1600/NifSkope_2017-05-23_10-55-38.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="472" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWDJTzeCsl5SMg9bUKCH9Xb6ku5FpgRcGvNXso-6L3Bw6vni8QBbg_QV4AUAyCO919VkXvCBK4KacLSwbCxO3k_fxufaclqB8VZCCBFQMFB_2gTQsIB4nrvP-n6KAYZ6bC-o8TgWdb0uk/s640/NifSkope_2017-05-23_10-55-38.png" width="640" /></a></div>
<br />
<div>
<div>
<div>
<ul style="text-align: left;">
</ul>
</div>
</div>
</div>
</div>
@perturehttp://www.blogger.com/profile/03908481308241042705noreply@blogger.com5tag:blogger.com,1999:blog-202150600784761016.post-85340935336523443712017-05-21T13:02:00.000+04:002017-05-22T17:03:02.816+04:00Nif Plugin для 3ds Max 2015 - 2018<div dir="ltr" style="text-align: left;" trbidi="on">
Несколько месяцев разбора кода, изучения MAX SDK и библиотеки Havok в целях доработки плагина принесли некоторый результат. Версия 4.0.0.beta1 является более или менее существенной доработкой плагина.<br />
<a name='more'></a>Во первых плагин собран для самых последних версий редактора 3ds Max 2015 - 2018. Во вторых создан новый функционал для настройки моделей столкновения, а так же их импорта и экспорта. Для описания всех нюансов понадобится писать отдельный мануал. Новая утилита в составе плагина HavokEngine собрана с использованием исходников Havok, что позволило задействовать его функции для обработки коллизий, и открывает такие перспективы, как прямой импорт и экспорт анимаций в формате .hkx. Таким образом, данная версия плагина впервые позволяет напрямую импортировать и экспортировать коллизии bhkCompressedMeshShape с генерацией MOPP кода, позволяя создавать модели столкновений без дополнительных манипуляций.<br />
<br />
Ссылка на страницу с плагином находится в виджете "Файлы".</div>
@perturehttp://www.blogger.com/profile/03908481308241042705noreply@blogger.com3