Ошибки в работе Nif плагина

Выявленные в процессе использования плагина ошибки, а так же предложения по функционалу можно обсудить на данной странице. Только сразу хотелось бы обозначить некоторые моменты. Если ошибка произошла при импорте модели, то к комментарию необходимо приложить импортируемую модель и скриншот настроек импорта. Соответственно, при ошибках экспорта - экспортируемую сцену и скриншот настроек экспорта. Если проблему можно описать словами или скриншотом - то в контенте нужды нет.

52 комментария:

  1. Minor issues i found in 4.0.0.beta1/max 2016

    -vertex color unchecked on export exports all white/black vertexcolors and leaves "hasvertexcolors" checked to "yes" inside nifskope

    -skeleton must be unhidden before exporting skinned meshes(was not necessary in 3.7.3)

    -automatic naming of Header/Root Node inside nif to individual names for example:
    [0 NiNode -> Gold01.nif}
    When copying blocks between files in NifSkope this takes time for renaming
    Old methid with [0 NiNode -> Scene Root] was better/quicker

    testiger2

    ОтветитьУдалить
    Ответы
    1. Thank you for your report. All bugs fixed, you can download the updated version.

      Удалить
    2. Now that was fast. Everything works excellent, thank you very much.
      testiger2

      Удалить
  2. При импорте некоторых моделей в 3ds max 2018 64x - к примеру таких как тело Фалмера, материал на теле объекта отображается как то неправильно, частично прозрачным, если применить новый материал и переназначить нужную текстуру всё становиться отлично, возможно это какой то баг плагина?

    https://yadi.sk/i/JYXAtKzR3JzGK5

    ОтветитьУдалить
    Ответы
    1. Это не ошибка, это альфа канал так отображается. Можешь или в шейдере его отключить, но перед экспортом обратно включить не забудь. Или во вьюпорте, тогда на шейдер это не повлияет.

      Удалить
    2. Теперь понятно, а я думал с моделью что то не
      так, хотя материал то другой отображался правильно.

      Удалить
    3. Добавь в другой материал прозрачность - и то же самое получишь. Даже со стандартными максовскими шейдерами.

      Удалить
    4. Проверил всё таки и есть, новый макс не привычен пока что для меня.

      Удалить
  3. I found a two minor problems during setup: I have installed 3dsmax 2016 64bit on my d-drive. The setup does not recognize it and copies the NifPlugin.dlu and HavokEngine.exe to the standard on c.
    In the MaxNifTools.ini I had to manually change the MeshRootPath and TextureRootPath for Skyrim and SSE and remove the "Textures" and "Meshes" since it is appended later on. After that the meshes loaded correctly.
    And a small wish: I usually set "Weld Vertices" to 0 on export - it would be nice if the dialog would remember this setting.
    Thanks for your great work

    ОтветитьУдалить
    Ответы
    1. The installer gets information about the editor directory from the registry. If it does not correctly copy the files - then there is not the correct information.
      https://i.imgur.com/9HxW2yO.png

      It is not necessary to specify paths to textures and grids in MaxNifTools.ini, again, if the registry contains the correct information about the installed games.
      https://i.imgur.com/WLGqaON.png

      In occasion of "Weld Vertices"I will look, that it is possible to make.

      Удалить
    2. Thanks for your quick answer - unfortunately all the registry settings are correct. Next time I install it I will check the environment more thoroughly.

      Удалить
    3. In turn, I'll try to install max on the disk D and then install the plugin.

      Удалить
    4. Yes, you were right. Reading the registry was incorrect, and the files were copied to the default directory.

      As for MeshRootPath and TextureRootPath in MaxNifTools.ini, when installing the plugin, you need to specify the Data folder, not the Textures and Meshes folders. I added a description of the installation process on the plugin page.

      Weld vertices fixed.

      You can download the updated version.

      Удалить
  4. 1. Экспортировав 3д объект с максовским материалом не нужно заменять его
    в Nif scope можно сразу переносить в игру и объект будет отображаться, но:

    Если 3д объект является доспехом и или одеждой и у него есть модификатор
    Skin и если мы не меняем BSLightingShaderProperty объект теряет свою привязку
    и отображается в мире игры как бы не привязанным вовсе, весит в воздухе
    как если бы мы экспортировали любой объект совсем без привязки к костям.

    Но заменив шейдер на стандартный игровой модели из
    доспеха или одежды всё начинает работать как надо.

    Было бы неплохо создать несколько материалов в максе
    для разных типов объектов. На моей практике таких
    материалов понадобиться всего 3-4.

    * Объекты с доспехами и другой одеждой

    * которые привязываются к костям персонажа
    у них должен быть свой материал в максе.

    * Объекты который отображаются когда их
    выбрасываешь в мир игры у них тоже другие
    настройки материала.

    * Вроде ещё у щитов материал особенный такой же как
    у оружия или вообще другой я ещё это вспомню и уточню.

    ----------------------------------------------------------

    2. Макс вылетает в 100% случаев если выбрать в параметрах Shader Basic Parameters в редакторе материалов шейдер: Fallout 4 Shader.

    3. Если сперва создать 3d объект и добавить его в список bhkCollisionObject а
    потом применить к этому объекту Skin и попытаться указать на кость (point) то
    3ds max в 100% случа вылетает. - но если сначала назначить указать в модификаторе
    skin нужную кость (point) и уже потом этот объект указать в bhkCollisionObject 3ds
    max не вылетает.

    ОтветитьУдалить
    Ответы
    1. Чтобы материал нормально отображался и доспех двигался с телом игрока, то после экспорта нужно добавить флажок в BSLightingShaderProperty - в Shader Flags 1 добавить Skinned. Насколько я помню - это исправляло все проблемы. Теоретически, при экспорте можно было бы автоматом добавлять такой флажок, если выбран экспорт скина и частей тела, но нужно ли это вопрос (можно просто экспортировать персонажа, у него вроде другие настройки) :)

      Удалить
  5. если сначала назначить указать в модификаторе skin нужную кость (point) и уже потом этот объект указать в bhkCollisionObject 3ds max не вылетает - но при этом при экспорте к объектам не добавляются блоги bhkCollisionObject их нет.

    ОтветитьУдалить
  6. Hello My Friend, how to solve this problem:
    (Screenshot): https://drive.google.com/open?id=0B554i2l7MJsSRGlCM1NCclpDYk0

    ОтветитьУдалить
    Ответы
    1. Check for file "C:\Users\USERNAME\AppData\Local\Autodesk\3dsMax\201X - 64bit\ENU\en-US\plugcfg\MaxNifTools.ini"

      Удалить
  7. Hi, I have been using your plugin for 3d max but I have hit a wall.
    I don't know if you’re still working on the plug in but there is a problem with exporting a skin wrapped mesh with multiple partitions of BSDismember on it like the CBBE body mesh, so it makes it hard to make armor.

    Also, there's a problem with exporting skin wrapped meshes (made in 3ds) were they shrink even though I have 0 transforms on and I can’t fix it. If I export the mesh to a nif file and import it again and skin wrap it, this does not happen, but the mesh explodes in game with all the right settings or I would just do that and not bother you.

    I have tried this in 2016 3ds max and I installed 18 to see if it fixed it but it didn't (one side note the polygons does not get highlighted in the BSDismember setup in 2018 only faces and objects, that was not the case in 2016).

    I have some screenshots on my google drive of the issues:
    https://drive.google.com/open?id=1j-BeBqMdi8SJDL-7X6_x7TaDat1U2YxM

    //Bleedingguns

    I wrote a post on your nexus mod page but I have fixed the nifscope problem, I found a newer Nifscope version NifSkope_2_0_2017-12-17-x64 (if anyone els have a problem with this)

    ОтветитьУдалить
    Ответы
    1. give me your 3ds scene that you export.

      Удалить
    2. I have added the file to my google drive it’s called downjacketexport.max I have managed to fix the scaling problem by resetting Xform but some of the verts on my mesh still is not being binded and the mesh explodes around the arms and I don’t know how to fix it, in edit envelopes everything looks fine.

      Direct to max file:
      https://drive.google.com/open?id=1mWiEf7CU0-HwcEXGWvK8hj6uDklw1664

      //BleedingGuns

      Удалить
    3. I usually delete the CBBE body and ad it back again in nifscope because I cant export it.

      Удалить
    4. 1. Assign all faces SBBE body to one smoothing group.
      2. Set the Bone Affect Limit = 4 in the skin modifier for the jacket and hood

      Удалить
    5. Thank you so much!! you're the best. Now I only have to make the mesh not shit XD

      I don't want to bother you anymore, but do you know why my mesh/textures disappears when i zoom in to the closest point in third person before it goes in to first person?

      Screenshots: https://drive.google.com/drive/folders/17biVOgMs5H9b0O2BVvE341HNZKM03Mi_

      //BleedingGuns

      Удалить
    6. I do not know. Screenshots do not provide information, I need to see a modification to understand.

      Удалить
    7. Sorry :) here is my export settings the nif I'm putting in game, max file and the textures I'm using (I have not made my own em yet so I'm using one from the BSlightshaderProperty I copied from another file) well my D and N is not really final produkt either XD

      https://drive.google.com/open?id=17biVOgMs5H9b0O2BVvE341HNZKM03Mi_

      Удалить
    8. Re importing the nif in to 3ds max and exporting it again fixes the problem so i will just do that :) thanks for all your help.

      But if you find a solution I will be all ears :)

      //Bleedingguns

      Удалить
  8. Друг, я заметил одну интересную вещь, при экспорте из макса модели с коллизией, коллизия всегда имеет бОльший размер, нежели меш модели, или convex vertices shape, на форумах пишут уменьшать размер коллизии до 30% из 100%, мне кажется это странным, ведь ванильные модели имеют коллизию 1:1 с мешем модели. Что я заметил:
    Возьмем например тип коллизии bhkConvexVerticesShape - при экспорте модели с макса у этого узла в NifSkope есть такой параметр, как Radius - и он равен значениям вроде 0.542850 у только что экспортированной модели. В ванильных моделях этот параметр имеет значительно меньшее значение, это 0.007784 у метлы, у гроба другой тип коллизии - bhkCompressedMeshShape - и у него все равно значение вроде 0.005000, что значительно меньше того, которое создает макс. В общем смысл в чем, если это значение маленькое или 0 - коллизия модели в игре отрабатывает как надо, без ощущения того, что она в несколько раз больше и без надобности создавать меньшую коллизию, чем модель. Советую поменять этот параметр при экспорте. В свитке параметров коллизии его нету. Тестил на базовой модели чайника в максе.
    Последовательность действий:
    1) Создал чайник
    2) добавил материал
    3) добавил коллизию с параметрами - выбрал Export Source Mesh, не клонировал его. Тип материала - Metal, тип Convex Shape, далее в Layer - Clutter, Mass 5, friction 0.5, restitution 0.4, Motion system - Shpere Inertia, Solver Deactivation - Low, Quality Type - Moving, Центр масс вычисляется с меша по-умолчанию, и параметры отображения все стоят.
    4) В Export галка на Collision, Mesh: Normals, Update Tangent Space, Collapse Transforms, Zero Transforms, Animation: Nif w/o animation, Transforms, Miscellaneous: Sort Nodes, Start Nifskope. Scene: Root Node Type - BSFadeNode, Root Node Name - File Name.
    Скриншот из макса с коллизией:
    https://i.imgur.com/y8qHF4Y.png
    Скриншот параметров экспорта:
    https://i.imgur.com/rs6uSs4.png
    Скриншот из NifSkope 2.0 dev 7
    https://i.imgur.com/gjfTdZy.png

    Если как-то можно поправить, было бы круто! Спасибо большое за классный плагин, теперь не нарадуюсь, что можно без лишних танцев с бубном экспортировать с минимумом корректировок!

    ОтветитьУдалить
    Ответы
    1. А какие проблемы в игре вызывает "некорректное" значение этого параметра?

      Удалить
    2. Размер коллизии в игре выходит больше, чем самого меша модели, хотя они в максе имеют один масштаб. На выходе в игре предмет висит и катится по воздуху, скриншот и видео прилагаю.
      https://i.imgur.com/mX6kN87.jpg
      Видео:
      https://youtu.be/gNlYGKax-fc

      Удалить
    3. Понятно, спасибо за тесты. Попробую исправить.

      Удалить
    4. Собственно, решение на поверхности. bhkConvexVerticesShape и bhkCompressedMeshShape создаются инструментами Havok, при этом ExtraRadius рассчитывается автоматически, надо только его в ниф при экспорте записать. Величина же этого радиуса зависит от некоторых параметров, и здесь вопрос - нужны ли они пользователю в интерфейсе? Они не интуитивно понятны, и ни кто до конца не будет понимать, как ими пользоваться. ИМХО, можно определить дефолтные значения, а кого не устроит результат - можно всегда в нифскопе руками поправить.

      Удалить
    5. Вот да, хотя бы по дефолту их выставить немного меньшими, вряд ли тогда придется их править потом, спасибо большое, что нашли время посмотреть!
      В интерфейсе думаю вряд ли нужны, а вот по дефолту бы их чуть меньшими сделать, буду рад протестить, если что, спасибо!

      Удалить
    6. Хорошую тему ты расшевелил, Кирилл. Я поковырялся в исходниках Havok SDK, и нашел очень интересные, новые для меня нюансы. В следующем обновлении плагина будут учтены новые знания, и изменен подход к формированию выпуклой оболочки. Помимо этого есть еще 2-3 мелких бага, которые будут исправлены, и новые инструменты работы связанные с анимациями для Skyrim.

      Удалить
    7. Здорово, спасибо!! (к сожалению, не знаю как твое имя :( )
      Ух ты! И анимации это тоже очень классно, поскольку делать их текущим методом, с прогоном через инструменты Havok в максе это пытка))!
      Кстати, если нужен будет Havok Content Tools или Havok Behavior Tools, обращайся, у меня на данный момент самая полная коллекция есть разных версий :)
      Я считаю, что ты большой прорыв сделал, а это очень мотивирует вернуться в свободное время к моддингу и написать интересные статейки :) У меня коллеги на работе есть по прикладному ПО, но я по web-разработке больше, хотя в C++ и Qt хочется тоже поковыряться когда-нибудь, когда-то давно с Visual Studio немного работал, но ничего сложнее текстового редактора не делал =)))

      Удалить
    8. Зовут меня Дмитрий. Мы с тобой во "В Контакте" общались. Я в курсе твоей коллекции, и обращался к тебе за необходимыми инструментами, спасибо. На самом деле, не считаю, что сделал большой прорыв в разработке плагина. Всего лишь сделал посильный вклад. И это обусловлено в первую очередь собственными интересами.

      Что касается анимаций, то интересы расширились в сторону MotionBuilder. Написал плагин для работы с анимациями Havok, пытаюсь добавить в игру новый скелет и анимации. А точнее, заменить ванильные.

      По поводу плагина 3ds Max - ближайшее время постараюсь выложить версию с исправлением всех известных ошибок.

      Удалить
    9. Аааа, помню, помню!)) С лета там не сижу уже просто уже ;)
      Ну, в любом случае, я очень рад, что есть талантливые люди, которые обладают нужными знаниями и могут помочь и себе и другим творить :) Спасибо! Будем ждать)
      Новый скелет ребята из проекта Skywind внедряли для Силт-стрйдера из Морровинда, насколько я помню, когда в нем участвовал, там были тоже свои кастомные сборки плагина для макса для работы с коллизией персонажей.
      С Рождеством!

      Удалить
    10. Коллизия персонажа - тема требующая отдельного внимания. Если сказать точнее, то не столько коллизия, сколько ограничения, позволяющие создать Ragdoll, по нашему "тряпичную куклу". Над этим функционалом тоже работаю, поскольку он мне нужен для нового скелета.

      Удалить
    11. Да да, про нее и говорил :)

      Удалить
    12. Кстати, посмотрел MotionBuilder, он мне чем-то напомнил программу Natural Motion Endorphin (Euphoria), в ней раньше анимации для GTA: SA делал: https://www.youtube.com/watch?v=ZLElrFV5cfo
      Но твоя прога посолиднее выглядит и более интересной, надо бы изучить :)

      Удалить
    13. Вот ссылка на то, что говорил про коллизию персонажа: https://tesrenewal.com/forums/tools-and-coding/tools-havok-enabled-nif-plugin
      Может что интересное увидишь

      Удалить
    14. Проект по ссылке у меня открылся с кучей ошибок, разбираться в них нет желания. Есть своё видение, как это реализовать, документация и примеры хавок в помощь. Но, в любом случае, спасибо за участие.

      Удалить
    15. Свое видение - это хорошо, успехов!!

      Удалить
  9. https://imgur.com/a/SvpcZ
    такая ошибка вылезает при попытке сохранить проект в максе

    ОтветитьУдалить
    Ответы
    1. Да, многие об этом говорят. Однако, я у себя такой ошибки не встречал, поэтому не могу её отловить.

      Удалить
    2. У тебя стоит 3ds max sdk?
      Потому что ругается на ее директорию. он устанавливается на усмотрение пользователя при осовной установке макса

      Удалить
    3. Я сейчас посмотрел, возможно даже потому что SDK у меня не стоит, то такая ошибка вылазит. надо попробовать поставить его.
      Но старый Niftool 2015 года и без него сохраняет впринципе.

      Удалить
    4. Конечно, сдк стоит, без него плагин невозможно писать. Ругается не на директорию, а на функцию. С нексуса чувак сказал что ошибка при сохранении сцены с любым импортированным нифом. Возможно, это не так. Дай посмотреть твой ниф, с которым ошибка появляется.

      Удалить
  10. Этот комментарий был удален автором.

    ОтветитьУдалить
  11. Hi
    I’m sorry to have to bother you again but my armor mod is almost finished but I hit a snag I can’t get around.

    So I looked up how to make my jacket work with the weight slider and I know that I cant delete or ad any vertices and I know that I cant do anything that changes the name of the verts in anyway but it still breaks when I’m in the middle of the slider.

    I have tried all ways I could think of, but the way I thought would work was Importing the nif of the _1 jacket and then going down the stack to the editable mesh and moving the verts so all the skin binding is the same it worked fine on the cbbe body but it does not work on my jacket for some reason, I also tried adding a smooth in the stack that made the smaller model look like the bigger model but it did not fix my problem.

    I don’t know if I have to do something to the nifs in nif tools to make this work or if I made my model in a way that is not compatible with the weight slider ☹ or if I should export both the _1 and the _0 nif during the same session without saving to fix the problem, or if I should use some other export settings.

    You can find the big nif and the small nif here and the max file I’m exporting the small nif( _0 ) from and screenshot of the problem.

    https://drive.google.com/open?id=16ip0_UCjKxpaXjUHiddfGl_juzXK68qJ

    I hope you can help I have been trying to solve this for months.

    ( Btw I love the collision you added it’s really cool to see your custom made items in game 😊 )
    //BleedingGuns

    ОтветитьУдалить
    Ответы
    1. I found a way to fix it :D but anyway thanks for this amazing tool!!

      //BleedingGuns

      Удалить