×
Меню
Индекс

Краткий экскурс. Вопрос - Ответ

Вопрос
Сделал модель с полупрозрачными деталями, в 3д МАХ все выглядит нормально, но в игре они полностью не прозрачны!
Ответ
- проверьте triShapeData->vertex color->уровань альфы для вертексов.
 
Возможно вы применяли Vertex Paint со 100% alpha. Отчего модель стала полностью непрозрачной на уровне цвета вертексов.
Это полностью блокирует все прочие настройки прозрачности.
Чтобы исправить, снова примените на модель VertexPaint в настройках кисти управляйте уровнем прозрачности
и обработайте участки требующие прозрачность.
 
Либо полностью отключить использование цвета вертексов в этом разделе.
 
Также:
- проверьте наличие свойств альфы в ниф файле. Если их нет, добавьте уровень прозрачности в материал.
- в 2д редакторе посмотрите наличие альфа канала в текстуре.
 
Вопрос
Как мне сделать проходимую для игрока поверхность? И сказывается ли это на работе АИ.
Ответ
Добавить в корень ниф файла NiStringExtraData со значением NCO.
Это полностью отключит просчет коллизий.
Модель свободно выделяется в редакторе, но в почти полностью не осязаема для игрока (и прочих).
Единственный момент, что следует учитывать:
- снаряды будут взрываться о такую поверхность и находящиеся за ней объекты, будут не достижимы.
Впрочем, в большинстве случаев, этого и не требуется.
 
Многие игровые поверхности имеют этот стринг.
Например вода вокруг храма Вивека, водопады, некоторые растения и пр.
 
На работе АИ, по видимости, это не сказывается.
 
Еще варианты:
Преобразовать некоторые ноды объекта в niCollisionSwitch.
Это позволит сделать проходимыми только определенные участки объекта.
Однако, не следует превращать в КолиженСвитч корень файла.
При этом, такой вариант оказывает более предпочтителен, т.к. не вызывает проблем с активацией предметов находящихся сзади видимой поверхности. Равно и снаряды будут свободно пролетать сквозь такую поверхность.
Однако, здесь (скорее всего) потребуется добавление Маркера.
Иначе, объект состоящий из одних КолиженСвитч нод, не возможно подцепить в редакторе.
 
Другой вариант; создать в 3д редакторе упрощенную версию объекта имеющую проходы в своей поверхности.
Затем преобразовать этот объект в RootCollisionNode, что позволит более точно определить проходимые участки.
Видимые области можно дополнительно упаковать в niCollisionSwitch ноды.
Никаких стрингов экстра даты добавлять не требуется.
 
Также, можно создать, просто пустую РК (флаг 3).
Вовсе лишенную вложенных шейпов.
Как ни странно, но этот вариант может оказаться самым простым.
 
Еще способ:
Т.е. включить на объекта использование прокси геометрии.
 
Вопрос
Как мне добавить текстуру Бампа в модель.
Ответ
См. здесь.
Добавляется также, как и прочие текстуры.
 
Вопрос.
Как оптимизировать модель.
Ответ
1. зайти в меню Spell->Optimize->Combine Properties.
Это удалит все повторяющиеся свойства материалов и текстур.
Это действие следует проводить всегда в финале полировки модели.
Не следует делать это в начале доработки ниф файла, но только после завершения всех прочих действий, если таковые конечно имели место быть.
2. если этого недостаточно, можно попробовать объединить несколько шейпов в один.
Работает только в случае одинаковой текстуры, по каким-то причинам разделенной на несколько шейпов.
Для этого в ручную прописать одинаковые текстурные и материальные свойства объединяемым шейпам.
Также проверить наличие Has Vertex Color в triShapeData - в обоих случаях должно быть NO.
Шейпы должны находится в одной ноде!
ПКМ по этой ноде и Combine Shapes - это соединит несколько шейпов в один.
3. можно сократить кол-во нод, если это возможно для конкретного файла.
 
Вопрос
Объект (существо, или доспехи) имеют очень большую дистанцию активации.
Название появляется за несколько "метров".
Ответ
- Возможно у объекта нет Боунд Бокса, либо он слишком большой.
Следует уменьшить размер ББ, либо добавить оный. Это касается только существ.
 
- Вероятно проблема в скининге, слишком большие радиусы Bounding Sphere Radius.
Такое частенько происходит при многократном использовании SkinWarpa в 3д МАХе.
Следует зайти в настройки SkinData->Bone List->Bounding Sphere Radius-> установить меньшее значение. Возможно 1.
Это касается брони (одежды в целом) и существ.
Помогает не всегда, но как вариант.
Также см. здесь.
 
- Импортировать модель обратно в МАХ и проверить скининг, скорректировав зоны влияния костей.
Т.е. проверить объект на кол-во синих вертексов, см. также ниже о проблемах с щелями.
 
- Еще, можно попробовать упаковать шейпы, или преобразовать имеющиеся ноды в КолиженСвитч ноду.
При этом добавить в  файл брони (одежды) Боунд Бокс.
 
Вопрос
Как сделать запрещенную зону. Например новую модель лавы.
Ответ
См. AvoidNode.
 
Вопрос
Сделал модель со скинингом, в нифскопе и в 3д МАХ все прекрасно, но в игре вижу щели на поверхности!
Ответ
Слишком много костей воздейтсвует на один вертекс + влияние развертки текстуры.
Либо значения веса костей на вертексах вышли за придел минимально допустимого значения понимаемого игрой.
 
В основном, влияет развертка, т.е. щели возникают в основном в местах швов развертки.
Если модель не имеет развертки вовсе, то щелей не возникает вовсе.
 
Сократите кол-во костей на вертекс до 4х.
Либо увеличьте значения веса для двух основных костей. Это должно помочь сократить размер щелей.
 
Обязательно проверьте кол-во синих вертексов!
Как правило после SkinWarpa с большим значением Warpinga - модель обрастает ими как грязью.
Отчего вертексы могут получит воздействие сразу от всех костей скелета!
Что, закономерно, приводит к сокращению веса для основных костей.
Удалите все лишние зоны синих вертексов!
 
2. попробуйте сместить швы развертки текстуры.
Т.е. переместите острова так, чтобы швы приходились на наименее гибкие места сетки.
Т.е. там где наименьшее кол-во костей влияет на вертексы.
 
Вопрос
Некоторый небольшой объект исчезает на краю экрана! Когда он должен быть еще виден.
Когда близко подхожу к объекту на нем начинают появляться "дыры" словно камера попала во внутрь.
 
Ошибка связаная со слишком большим радиусом объекта.
 
В нифскопе пройтись по всем niTriShapeData и сделать Update Centre Radius.
Если значение значительно изменилось, вероятность того, что проблемы была здесь весьма высока.
 
Как вариант прописать в поле Radius:
<float_max>
Либо:
<float_min>
Первое (вероятно) более правильно.
 
Аналогично это работает и для частиц.
Но здесь не так заметно.
 
Вопрос
Как скрыть элемент ниф файла.
Ответ
Поставить флаг Hidden в настройках шейпа, или ноды.
Как вариант, сменить номер флага на нечетный.
2->3
42->43
8->7
Т.е. нечетный флаг всегда скрывает шейп, или ноду.
 
Вопрос
Как добавлять, или исправлять уже имеющиеся скелетные анимации (существ, активаторов, нпс)
Ответ
Добавлять новые анимации, в приделах возможного, возможно через 3д МАХ, или через Блендер.
Старую версию оного (2.41) по средством Нифтулз плагина.
Который поддерживает экспорт скелетных анимаций.
Увы, плагин почил на "лаврах" и не обновляется уже много лет.
 
Или же, через свежую версию  Блендера (2.8).
Которая с 03 2020 получила совершенно новый плагин, который умеет импортировать и экспортировать такие анимации!
https://github.com/Greatness7/io_scene_mw/releases - плагин под блендер 2.8.
 
Ограничено, можно изменять анимации через нифскоп.
Но в полной мере возможно изменять их порядок, или использовать уже имеющиеся анимации в других целях.
Т.е. прописать существу названия групп анимаций атаки оружием в уже имеющиеся группы анимаций атак лапами.
Делается это посредством редактирования КФ файла.
 
Также ограничено можно использовать АнимКИт для извлечения некоторых анимаций существ и назначения оных в качестве дополнительных НПСам.
 
Вопрос
В сцене есть флип контроллер, настроено все правильно, но в игре заметно подергивание кадров.
Анимация не выглядит зацикленной, хотя в нифскопе все нормально.
Ответ
Проверяйте время завершения (Stop Time) у всех контроллеров в сцене.
Оно должно быть одинаковым.
Также, проверьте ключи в data контроллеров.
 
Если в сцене есть частицы, обратите внимание на время их жизни.
Оно не должно быть короче, чем анимации флип контроллера.
Обычно проблема как-раз в этом, частицы исчезают раньше, чем успевает проиграться вся анимация текстур.
 
В большинстве случаев, такое происходит, при копировании контроллеров с разным временем работы.
 
Примечание.
Верно для любых контроллеров, не только для Flipp!
 
Вопрос
Сделал новую модель магического щита, анимации работают нормально, но при движении щит подергивается.
Ответ
Проверьте флаг анимационной ноды!
Оптимально будет назначение 128го флага.
 
Поскольку щит встраивается в структуру "скелета" ГГ и НПС, то он получает от них известное воздействие.
Что при использовании обычных флагов (32, 42) и приводит к некоторому рассинхрону.
 
Вопрос
Сделал модель брони (скиненной) но она не отображается на игроке в игре!
Ответ
Вероятно неправильные имена слотов, либо нарушена нумерация, либо корень скелета (файла) назван не правильно. Реже ошибки скининга.
 
- Проверьте имена слотов.
- Проверьте их нумерацию, не должно быть пробелов в оной, а равно перед номер должен идти пробел. 
- Проверьте имя корня файла и корня скелета. Обязательно должно быть, как BIP01.
- Удалите все лишние ноды. Т.е. шейпы брони (одежды) могут размещаться в файле без дополнительных нод.