×
Меню
Индекс

Supported by Engine

Общий список того, что работает, или может работать в теории, или не работает вовсе в силу багов, но все равно прописано в коде движке.
 
Т.е. это полный список записей о контроллерах и объектах находящихся в потрохах кода игры.
Это центр ядра заметок!
Весь моддинг строится на основании этих возможностей движка!

 
 
Примечание.
Почти все наблюдения в ниф файлах проводились Нифскопом версии 1.1.3
Тема правок Nif.xml файла возникла относительно недавно (зима 2020) однако именно она позволила расставить все точки на i.
Как выяснилось, в некоторых случаях следовало пинать Нифскоп, а не движок игры, что делалось в прежних версиях заметок в т.ч.
 
Примечание.
Часть записей указанных в списке ниже, казалось относятся непосредственно к движку.
Т.е. их невозможно было добавить в нифскопе... по крайней мере так считалось до недавнего времени. (весна 2020го)
Но благодаря внимательности уважаемого Greatness7 это мнение было признано "не совсем" точным!
А именно, правки Nif.Xml файла нифскопа, позволяют создавать практически все объекты из списка в локальных ниф файлах!
 
Исключения:
Объекты работающие в ниф файлах, но результат не соответствует ожиданиям.
NiBSAnimationManager - может быть добавлен в ниф файлы, но от этого скорее вред чем польза.
NiKeyframeManager - добавлять возможно, но какую-то практическую пользу от этого получить не удалось.
Следующие объекты могут быть добавлены в ниф файлы, но особой пользы от этого - нет.
NiRenderedTexture - по видимости, требует наличия связи с камерой. Не имеет настроек и не может быть правильно настроена в ниф файлах.
NiRendererSpecificProperty - часть алгоритма шейдера воды. Прямое добавление в файлы, ни к чему не приводит.
NiScreenPolygon - по видимости, работает только в связке с камерой. Увы, камеры в локальных ниф файлах, не работают. Прямой пользы не замечено.
NiCamera - как оказалось, камера фактически не работает в ниф файлах. Т.е. получить пользу от локальных камер, не получается.
NiBltSource - по видимости не должен работать непосредственно из ниф файлов. Хотя и может быть здесь создан.
 
Не следует на прямую добавлять в ниф файлы, это приводит к КТД и иным ошибкам:
NiAccumulator - это системный класс и сам по себе не должен находиться в ниф файле.
NiBone - рудимент от старой версии движка, где отвечал за создание костей скелета.
Наличие в ниф файлах 4.0 версии, приводят редактор и игру к вылету.
TES3ObjectExtraData, BrickNiExtraData и BSMirroredNode - эти объекты создаются движком только во время сеанса игры и не работают из "обычных" ниф файлов.
Т.е. эти объекты динамически создаются для загруженных в оперативную память моделей и содержат какие-то временные данные.
NiDX8Renderer NiRenderer - попытки внедрять в ниф файлы приводят к стабильному вылету редактора.
Т.е. эти объекты не загружаются из ниф файлов. Да и не предполагается (скорее всего) их локальное использование в целом.
Управляют рендерингом сцены "за кадром" так сказать.
NiRenderedCubeMap - на доработано в этой версии движка и не может использоваться в ниф файлах.
Т.е. полноценная поддержка кубической карты была добавлена только в 4.2 версий движка.
К сожалению, беседка, не удосужилась перевести Морровинд на оную.
 
Все остальное, получило известное исследование и может быть внедрено в ниф файлы в той, или иной степени!
Т.е. все найденные в движке записи по объектам были "изучены"!
*не прошло и 20 лет! всего-то лето 2020!(С)
*и некоторое обновление данных за лето 2021го(С)
*ок, уже осень 2022го! Во, теперь точно, есть 20 лет и даже с добавкою(С)

Примечание по таблице.
1. Название объекта.
 
2. Если Beth, то уникальное творение беседки, добавленное оной в код МВ.
Не документировано в справках к движку!
 
3. Для добавления, или правильного редактирования объекта, в ниф файлах требуется правка Nif.xml файла!
Нативная версия Nif.xml файла содержит некоторого рода неточности, либо вовсе не содержит данных по работе с некоторыми объектами. Но исправления позволяют задействовать их в полной мере.
 
4. Возможность и полезность добавления объекта в Ниф файл, посредством Нифскопа.
Т.е. практически все объекты (указанные в движке игры) можно добавлять и в ниф файлы, но работать и приносить пользу, будут далеко не все.
Возможность - объект можно добавить в ниф файл.
Нифскоп это позволяет.
Резонность - оправданность добавления объекта в ниф файл.
Но не факт, что игра согласится использовать эту модель.
? - под вопросом. Использование в ниф файлах под вопросом.
Либо не видно смысла, либо не известны условия для использования в полной мере.
 
5. Как объект используется игрой.
"Системное" - используется как общее понятие движка и, в основном, не предназначено для работы в Ниф файлах.
"Работает" - стабильно работает в ниф файлах.
"Сломано" - не может работать в ниф файлах. Патчей небыло.
"Исправлено в ***" -  может работать по средствам патчей, но в ванильном движке не работает.
 

 
Добавление в Нифскопе
 
Название объекта
Beth
nif.xml
возможность
резонность
Движок игры
 
*
да
нет
Работает. Не для ниф файлов
 
*
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
*
да
нет
Работает.
 
 
да
нет
Вероятно используется. Но не в нифах.
Beth
*
да
нет
Работает. Не желательно в нифах.
Beth
 
да
 
Работает
 
*
да
 
Работает
Beth
 
да
 
Работает
Beth
 
да
 
Работает
 
 
да
нет
Работает. Но не в ниф файлах.
 
*
да
 
Работает
 
*
да
 
Работает
 
 
да
 
Работает
 
*
да
нет
Системное. Не для ниф файлов
 
 
да
 
Работает
 
 
да
нет
Работает.
 
 
да
 
Работает
 
 
да
 
Работает
 
*
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
*
да
?
Работает.
 
 
да
 
Работает
 
*
да
 
Работает. Забаговано в движке! Патч в МВСЕ 2.0
 
*
да
 
Работает. Забаговано в движке! Патч в МВСЕ 2.0
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
*
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
нет
Активно, но не работает.
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
*
да
нет
Работает в движке. Но не в ниф файлах.
 
*
да
нет
Не работает в движке.
 
*
да
нет
Работает в движке. В нифах не корректно.
 
*
да
?
Работает в движке. В нифах, польза не замечена.
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
*
да
нет
Работает в движке. В нифах, польза не замечена.
 
 
да
 
Работает
 
 
да
нет
Сломано, или отключено.
 
 
да
 
Работает
 
*
да
?
Работает
 
 
да
 
Работает
 
*
да
 
Работает
 
 
да
 
Работает
 
 
да
? нет
Частично отключено.
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает. Исправления в МВСЕ 2.Х
 
 
да
 
Работает
 
*
да
 
Работает. Исправлено в МВСЕ 2.Х и МСП 2.4
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
*
да
 
Работает
 
 
да
нет
Работает
 
 
да
нет
Работает
 
 
да
 
Работает. Исправления в МВСЕ 2.Х!
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
нет
Не используется.
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
 
 
да
 
Работает
AvoidNode
Beth
 
да
 
Работает
BSMirroredNode
Beth
*
да
нет
Работает в движке. Но не в ниф файлах..
Beth
*
да
нет
Работает в движке. Но не в ниф файлах..
Beth
 
да
 
Работает
Beth
*
да
нет
Работает в движке. Но не в ниф файлах.
 
 
системное
 
опрос хидера ниф файла.
 
Примечание.
Увы, но окончательно все точки над i может расставить только официальная справка от движка 4.0 и 4.2 версий.
До этого, будет существовать некоторая возможность наличия ошибок, или не верно интерпретированных данных.

 
Общая иерархия объектов.
Кто от кого зависит и с чем связан.
┌▪ NiObject (общее понятие не "физический" объект)
├──┬▪ NiObjectNET (общее понятие не "физический" объект)
│  ├───▪ NiSequenceStreamHelper
│  │
│  └──┬▪ NiAVObject (общее понятие не "физический" объект)
│     ├───▪ NiCamera
│     │
│     ├──┬▪ NiTexture (общее понятие не "физический" объект)
│     │  │ ├──┬▪ NiRenderedTexture
│     │  │  └───▪ NiRenderedCubeMap
│     │  │
│     │  └───▪ NiSourceTexture
│     │
│     ├──┬▪ NiDynamicEffect (общее понятие не "физический" объект)
│     │  │ ├───▪ NiTextureEffect
│     │  │
│     │  └──┬▪ NiLight (общее понятие не "физический" объект)
│     │     ├───▪ NiAmbientLight
│     │     ├───▪ NiDirectionalLight
│     │     └──┬▪ NiPointLight
│     │        └───▪ NiSpotLight
│     │
│     ├──┬▪ NiGeometry (общее понятие не "физический" объект)
│     │  ├───▪ NiLines
│     │  │
│     │  └──┬▪ NiTriBasedGeom (общее понятие не "физический" объект)
│     │     ├───▪ NiTriShape
│     │     ├───▪ NiTriStrips
│     │     └──┬▪ NiParticles
│     │        ├───▪ NiAutoNormalParticles
│     │        └───▪ NiRotatingParticles
│     │
│     └──┬▪ NiNode (и понятие и "метафизический" узел используемый в файлах)
│        ├───▪ AvoidNode
│        ├───▪ RootCollisionNode
│        ├───▪ NiBillboardNode
│        ├───▪ NiBSAnimationNode
│        │        └───▪   NiBSParticleNode
│        ├───▪ NiBSAnimationManager
│        ├───▪ NiBSPNode
│        ├───▪ NiCollisionSwitch
│        ├───▪ NiSortAdjustNode
│        └──┬▪ NiSwitchNode
│           ├───▪ NiFltAnimationNode
│           └───▪ NiLODNode
├──┬▪ NiGeometryData (общее понятие не "физический" объект)
│  ├───▪ NiLinesData
│  │
│  ├──┬▪ NiParticlesData (общее понятие И "физический" объект)
│  │  ├───▪ NiAutoNormalParticlesData
│  │  └───▪ NiRotatingParticlesData
│  │
│  └──┬▪ NiTriBasedGeomData (общее понятие не "физический" объект)
│     ├──┬▪ NiTriShapeData
│     │  └───▪ NiTriShapeDynamicData
│     └───▪ NiTriStripsData
├──┐ NiSkin (общее понятие не "физический" объект)
│  ├───▪ NiSkinData
│  ├───▪ NiSkinInstance
│  └───▪ NiSkinPartition
├──┐ NiData (общее понятие не "физический" объект.)
│  ├───▪ NiColorData
│  ├───▪ NiFloatData
│  ├───▪ NiKeyframeData
│  ├───▪ NiMorphData
│  ├───▪ NiPixelData
│  ├───▪ NiPosData
│  ├───▪ NiUVData
│  └───▪ NiVisData
├──┬▪ NiExtraData (общее понятие не "физический" объект)
│  ├───▪ NiStringExtraData
│  ├───▪ NiTextKeyExtraData
│  └───▪ NiVertWeightsExtraData
├──┬▪ NiProperty (общее понятие не "физический" объект)
│  ├───▪ NiAlphaProperty
│  ├───▪ NiDitherProperty
│  ├───▪ NiFogProperty
│  ├───▪ NiMaterialProperty
│  ├───▪ NiRendererSpecificProperty
│  ├───▪ NiShadeProperty
│  ├───▪ NiSpecularProperty
│  ├───▪ NiStencilProperty
│  ├───▪ NiTexturingProperty
│  ├───▪ NiVertexColorProperty
│  ├───▪ NiWireframeProperty
│  └───▪ NiZBufferProperty
├──┬▪ NiTimeController (общее понятие не "физический" объект)
│  ├───▪ NiFlipController
│  ├───▪ NiKeyframeController
│  ├───▪ NiKeyframeManager
│  ├───▪ NiLightColorController
│  ├───▪ NiLookAtController
│  ├───▪ NiMaterialColorController
│  ├───▪ NiPathController
│  ├───▪ NiUVController
│  ├───▪ NiVisController
│  │
│  ├──┬▪ NiFloatController (общее понятие не "физический" объект)
│  │  ├───▪ NiAlphaController
│  │  └───▪ NiRollController
│  │
│  ├──┬▪ NiMorpherController (общее понятие не "физический" объект)
│  │  └───▪ NiGeomMorpherController
│  │
│  └──┬▪ NiParticleSystemController
│     └───▪ NiBSPArrayController
├──┬▪ NiParticleModifier (общее понятие не "физический" объект)
│  ├───▪ NiGravity
│  ├───▪ NiParticleBomb
│  ├───▪ NiParticleColorModifier
│  ├───▪ NiParticleGrowFade
│  ├───▪ NiParticleRotation
│  └──┬▪ NiParticleCollider(общее понятие не "физический" объект)
│     ├───▪ NiPlanarCollider
│     └───▪ NiSphericalCollider
├──┬▪ NiAccumulator (общее понятие не "физический" объект)
│  └──┬▪ NiClusterAccumulator
│     └───▪ NiAlphaAccumulator
├──┬▪ NiRenderer (общее понятие не "физический" объект)
│  └───▪ NiDX8Renderer  *не для ниф файлов.
├───▪ TES3ObjectExtraData
├───▪ BrickNiExtraData
├───▪ NiBltSource
├───▪ NiPalette
└───▪ NiScreenPolygon