×
Menu

NiCamera - parameters

Простое описание настроек этого объекта.
Хотя проку в этом, для локальных ниф файлов, по видимости, не много...
Но может будет полезно при работе с МВСЕ, или иной утилитой.
Также следует обновить Nif.xml файл!
Default constructor. Constructs a perspective camera with the following default settings:
Variable
Default Setting
Frustum (L, R, T, B, N, F,O)
-0.5, 0.5, 0.5, -0.5, 1.0, 2.0, false
Port (L, R, T, B)
0.0, 1.0, 1.0, 0.0
Scene
NULL
Renderer
NULL
LOD Adjust
1.0
 
Примечание.
По видимости, МВ обрезает камеру по значение Viewport Bottom.
Т.е. все что ниже (в настройках камеры ниф файла), не загружается в сцену и никак не используется.
Также, изучение захваченной из игры камеры, показали меньшее кол-во байтов.
Экспортированная из МАХа камера, показывает более длинный набор данных по HEX редактору, против захваченной из игры.
Также, ССГ показывает камеру без полей ЛОД и СкенеРут.
Т.е. не похоже, что движок "прячет" какие-то настройки, он их просто режет под корень. ^-^
 
Примечание.
Камера может быть перемещена и повернута, но не скалирована.
Т.е. изменение размера самой камеры ничего не дает.

Frustum Left
Собственно настройки конуса. Лево, право, верх, низ.
При экспорте их МАХа только они и задействованны.
 
Retrieve and set the view frustum parameters. The view frustum data structure is defined in the NiCamera class header. The values for the near and far view frustum planes are checked to conform to the minimum near plane distance and maximum far-to-near-plane-distance ratio defined for the NiCamera class. The near plane is adjusted if the settings do not conform. The mechanism for the check is as follows: if the near plane value is less than the new far plane divided by the maximum far-to-near ratio (set with functions below), then the near plane is set to be the new far plane divided by the maximum ratio. If this value for the near plane is less than the minimum near plane distance value, it is increased to the minimum value.
 
Frustum Right
Frustum Top
Frustum Bottom
Frustum Near
Минимальная точка конуса рядом с камерой. Т.е. влияет на размер картинки при приближении к объектам.
 
Frustum Far
Максимальная площадь конуса в удалении от камеры. Т.е. должно влиять на видимую игроком область.
 
Viewport Left
Отвечают за помещение данных с камеры в backbuffer видеокарты.
С этими значениями связан плавающий баг исчезающих возле края экрана объектов.
Т.е. берется радиус объекта, берется поправка к frustum из этих разделов и объект перестает отображаться.
 
Эти значения камеры, можно изменять только посредством МВСЕ, МГЕ и ФпсОптимайзера.
Это будет оказывать глобальный эффект на всю сцену.
Но изменение радиуса объекта, позволяет "скрывать" его непосредственно в  поле зрении камеры.
Т.е. объекты с уменьшенным радиусом будут буквально "выскакивать" в поле зрение камеры, равно и мгновенно исчезать из него.
О радиусе см. здесь.
 
ViewPort Functions
Retrieve and set the port on the backbuffer to which the view frustum is mapped. The left edge of the backbuffer is 0.0; the right edge is 1.0.
The top edge of the backbuffer is 1.0; the bottom edge is 0.0. All of these values must be between 0.0 and 1.0 and are not error-checked.
 
Viewport Right
Viewport Top
Viewport Bottom
 
Ниже следующее, для МВ по факту не актуально.
Движок, по видимости, отсекает все это.
 
Но, опишем для "общего развития".
LOD Adjust
Влияет на работу LODnode?
Возможно используется только в старших версиях движка.
Точных наблюдений нет.
Требуется изучение через МВСЕ 2.Х.
Т.к. простое изменение этого параметра в локальных файлах не дает результата.
Требуется "твикать" камеру прямо в сеансе игры.
 
Т.е. это значение нет смысла менять.
 
Retrieve and set the Level-of-Detail adjustment value for the camera. This value is used by NiLODNode objects to multiply the distance between the object whose LOD is being computed and the camera. A higher value for this setting will tend to lower the LOD of the objects drawn by the camera.
 
Scene
По умолчанию всегда пусто.
Т.к. движок берет все на себя.
Изменение в локальных файлах, не приводит к каким либо результатам.
Но можно указать корень файла, или иной объект.
Результат - нулевой. Т.е. ничего не происходит, но нет и вылет на рабочий стол.
В отдельных случаях, камера сама может стать корнем файла!
Тогда игра выдаст сообщение, что reference not found, т.е. вроде как "файл пустой" - и ничего не добавить в сцену. Т.е. файл с камерой откажется загружаться в сцену игры.
 
Retrieve and set the root of the scene graph that is to be rendered by the camera.
 
Num Screen Polygon
Кол-во этих самых Screen Polygonов.
Кроме специальных скринполигонов, можно указывать обычные шейпы.
Нифскоп 2.0 версии прямо показывает ссылку на код обычного шейпа.
 
Использование, этих самых полигонов, в локальных ниф файлах, маловероятно.
Т.к. камеры в них, не работают (о чем было писано выше).
Тесты были. В целях получить таки РендерТекстуру в локальном файле, увы все мимо.
 
Attaches a screen polygon to the camera. This function is designed for basic applications that are not compositing screen polygons in a specific order on the screen, as it always adds the new polygon to the first empty slot in the camera's list (which is not necessarily the end). This function does not check if the polygon is already in the camera's array.
 
Screen Polygons
Номера Screen Polygonов.
 
Т.е. сами объекты создаются отдельно (в нифскопе) (либо движком игры) (либо указываются шейпы)
И лишь указываются в этом разделе.
 
Дампы моделей в целом не выявили использование игрой этих самых "скринполигонов".
Везде используются шейпы, а в настройках камер, в этом разделе стабильно пусто.
 
Retrieves a reference to the camera's screen polygon array. Allows advanced applications to directly modify the screen polygon array to dynamically reorder, insert and delete screen polygons on a per-frame basis.
 

 
ССГ и Нифскоп.
Т.е. что меняется по ССГ при смене значения в Нифскопе.
Нифскоп
ССГ
Примечания
 
m_kFrusttum =
Настройки проекции камеры.
 
 
Все значение помещаются в одну строчку ССГ (NFLRTB)
Можно менять в нифскопе и МАХе.
Frustum Left
L
 
Frustum Right
R
 
Frustum Top
T
 
Frustum Bottom
B
 
Frustum Near
N
 
Frustum Far
F
 
 
m_kPort
Значения также идут одной строкой (LRTB)
 
 
Можно менять в нифскопе и МАХе.
Viewport Left
L
 
Viewport Right
R
 
Viewport Top
T
 
Viewport Bottom
B
 
 
 
Настройки поворота и положения (XYZ) самой камеры. Не ее проекции!
Т.е. меняются при повороте объекта с камерой, или самой камеры, как в редакторе, так и в игре.
Либо, если значения позиции камеры менялось в ее настройках, через Нифскоп.
Translation
Rotation
m_kWorldDir
 
m_kWorldUp
 
m_kWorldRight