|
|||||||
объект
|
название
|
описание и свойства что здесь есть.
| ||||||||
niNode
|
garda
|
ничего интересного.
Никаких особых настроек (в этом случае) не требуется.
| ||||||||
NiCollisionSwitch
|
Partilces
|
а это и есть лезвие!
Упакованое в колижен свитч ноду, скорее на всякий случай, чем по реальной необходимости.
Содержит все системы частиц и их настройки.
Т.е. настройки этой ноды оказываю влияние на все что в нее вложено.
Обратите внимание!
Флаг, этой ноды, 11! Т.е. она скрыта по умолчанию! Это следует ОБЯЗАТЕЛЬНО сделать, т.е. скрыть лезвие.
Если конечно стоит цель отключать поток (огня) когда оружие выложено в мир.
В данном случае, такая цель была.
В мире видна только рукоять, но не "магическое" лезвие.
Оное активируется только при взятии оружия в руки, на изготовку.
| ||||||||
niVisController
|
|
Для контроля за состоянием невидимость лезвия, здесь находится контроллер невидимости.
Включающий лезвие только в руках игрока!
Работает глобально на все содержимое этой ноды.
| ||||||||
Теперь идут вложенные ноды со своими уникальными настройками и прочим.
| ||||||||||
niNode
|
FILTR!
_StencilMask
(to
avoid
water
problem)
|
А это как и написано!
Фильтры для решения проблем с водой. *покрайней мере они стараются это делать... Т.е. содержимое этой ноды работает на изменения значений в стенсильном буфере.
И позволяет мечу работать в локациях с водой.
Т.е. постоянно обнуляя значения stens ref, для создания уникальных условий в буфере никак не пересекающихся с условиями задаваемыми настройками свойств трафарета воды.
Содержит 3 шейпа. Каждый со своими настройками трафарета.
А также z-буфер флаг 1.
| ||||||||
NiTriShape
|
FILTR1
FILTR2
FILTR3
|
Задача - обнулить значения трафаретов для всех случаев.
Сами объекты никак не рисуются игрой, но только выполняют роль фильтра, дабы лезвие работало стабильно.
Находятся в начале сцены файла! Это важно!
| ||||||||
niNode
|
EMITTER!
|
Эмиттер частиц, не содержит ничего интересного.
Кроме кейфреймконтроллера.
Который нужен в основном для предотвращения нежелательного увеличения размера частиц и фиксировании позиции оных.
| ||||||||
NiSortAdjustNode
|
Dark_Steam
|
Нода сортировщик альфы.
Включен режим отсечки (sorting = off)
Здесь, такой режим сортировки влияет на отрисовку звезд.
В ней находится основной поток частиц.
Собственно Дарк Стим, т.е. эти частицы работают монитором для отображения звездного неба и основой для прочего!
| ||||||||
NiBSParticleNode
|
SuperSpray01
|
Это их нода.
На которую и повешены основные свойства.
Флаг 170.
Это оказывает влияние на поведение частиц при движении.
Здесь позволяет сохранять форму клинка и лишь несколько смещаться после взмахе.
Т.е. и динамику сохраняет, но и не позволяет слишком растягиваться.
Если поставить флаг 32(42), частицы будут оставлять хвост.
Что хорошо для факелов, но не для меча.
Т.к. при ударе, лезвие будет визуально рассыпать.
Впрочем, такой флаг позволят создавать что-то похожее на кнут.
Флаг 32 (если использовать)
И флаг 170 (что используется в файле)
| ||||||||
|
|
NiStringExtraData обычная для частиц sgoKeep
NiStencilProperty (собственно они тут самые главные)
NiZBufferProperty флаг 1
NiMaterialProperty по вкусу, ничего такого.
NiAlphaProperty 4643 22
NiFogProperty флаг 11 Fog Depth 1
| ||||||||
NiRotatingParticles
|
Dark_1
Dark_2
Dark_3_
base_steam
|
Это сами системы частиц.
Для большего разнообразия их три.
Отличаются только настройками текстур.
Что влияет на контур лезвия меча и создает более ровный поток.
| ||||||||
NiBSParticleNode
|
Glow_around_dark
|
Это нода частиц отвечает за создание свечения вокруг лезвия!
Флаг также 170.
Т.к. ореол должен сохраняться вокруг лезвия.
Содержит три потока частиц с разными настройками текстур и альфа свойств.
NiStringExtraData обычный для частиц.
NiZBufferProperty флаг 1
NiMaterialProperty по вкусу.
NiStencilProperty
Not_Equal как раз отвечает за "не рисовать" там где 7890. Т.е. здесь это на лезвии. Что и позволяет создавать правильный ореол, только вокруг лезвия меча.
NiFogProperty флаг 11 глубина 1 - фон нужен для предотвращения проявления контура полигонов частиц под водой.
Далее идут сами частицы (с разными текстурами и альфа свойствами)!
| ||||||||
NiRotatingParticles
|
Blue_glow
|
Это голубое свечение вокруг лезвия.
Размер частиц большой.
Что позволяет получить значительный ореол свечения.
NiAlphaProperty флаг 13 22 (разные флаги дают более интересные результаты)
| ||||||||
NiRotatingParticles
|
Red_glow_contur
|
Это розовое свечение с небольшой зоной.
Размер частиц, чуть больше чем частицы самого лезвия.
Т.е. работают только по краю лезвия.
NiAlphaProperty 4617 22
| ||||||||
NiRotatingParticles
|
Sparks
|
Это искры, вокруг лезвия.
Т.е. поток искр по краю клинка и всегда рядом с ним.
Имеют NiBSPArrayController в качестве эмиттера указан поток частиц лезвия Dark_3_base_steam.
NiAlphaProperty 1 22
| ||||||||
NiBSParticleNode
|
Sparks
|
Еще искры!
И здесь флаг 42.
Эти частицы летают произвольно и оставляют за собой хвосты.
Добавляют больше живости в сцену.
Однако, флаг 42(32) "позволяет" частицам пропадать.
Т.е. эти частицы могут внезапно исчезать и появляется позже.
В данном случае это практически не заметно и может быть "оправдано" "магической природой лезвия".
Т.е. еще одна нода с частицами для вящей былинности могущественного клинка!
| ||||||||
|
|
NiStringExtraData обычно.
NiZBufferProperty 1
NiMaterialProperty по вкусу
NiAlphaProperty 4705 5
NiFogProperty 4 0.8
NiStencilProperty в целом также как и выше, частицы не рисуются внутри клинка.
Значение BOTH делает цвет частиц более насыщенным.
| ||||||||
NiRotatingParticles
|
Simple_spark_
from_blade
|
NiBSPArrayController использует в качестве эмиттера Dark_3_base_steam
| ||||||||
NiRotatingParticles
|
Area_spark
|
NiAlphaProperty 4621
NiBSPArrayController использует для эмиттинга уже Simple_spark_from_blade!
И другой флаг альфы.
| ||||||||
NiSortAdjustNode
|
|
Здесь нода сортировщика не нужна, можно обойтись обычной.
Т.е. ее настройки SORTING_INHERIT.
| ||||||||
NiBSAnimationNode
|
Stars_for_stencil
_space_only
|
В ее состав помещена анимационная нода (флаг 32), дабы контроллер смещения текстуры смог нормально работать.
Он будет дальше.
Собственно в этой ноде и находятся "звезды" т.е. тот самый объем который Неревар может видеть сквозь тьму клинка.
Обратите внимание, эта нода находится в самом конце графика файла!
| ||||||||
|
|
NiZBufferProperty 3
NiStencilProperty
Equal - т.е. рисуем звезды только на клинке! там где маска 7890.
И оттого что EQUAL объект находится внизу списка, иначе он не сможет нормально отобразится на лезвии.
Значение CCW рисуем только внутреннюю сторону.
Если включить внешнюю, или обе, объем заметно поменяется. Т.е. объект со звездами будет рисовать не только дальнюю сторону, но и ближнюю, что повлияет на отображение.
| ||||||||
NiCollisionSwitch
|
Stars_for_stencil
_space_only
|
Еще одна колижен свитч нода.
На всякий случай, спрайты были убраны в нее, дабы не создавать игре лишней головной боли. Впрочем, в оружиях, да еще со скрытыми деталями (как это лезвие) спрайты можно и не убирать в КС ноды.
Т.е. на зоны активации объектов это не будет влиять.
| ||||||||
NiTriShape
|
Space_notUsed
(spriteMuchBetter)
|
Этот объект отключен.
Т.е. он скрыт и больше не используется.
Но при желании можно задействовать.
Здесь это была капсула. При этом, изначально не помещенная в билборд ноду.
Но использования куба в составе билборд ноды, показало лучший эффект.
Капсула.
Размещенная вокруг клинка.
Однако, поскольку частицы могут менять свои позиции, иной раз они оказывались вне оной.
Отчего теряли рисунок звезд.
| ||||||||
NiNode
|
crl
|
Возможно лишняя нода.
Т.к. несет малую вспомогательную нагрузку будучи взята из другого файла.
| ||||||||
Sprite_for
BetterLooking
|
А вот здесь сами звезды!
Которые упакованы в билбордноду, что позволяет им всегда быть повернутыми к игроку. И всегда находится на лезвии!
Или почти всегда...
| |||||||||
NiTriShape
|
Box01
|
Объект содержащий текстуры звезд и контроллер их движения для большей суровости.
Здесь это огромный БОКС.
Которому, отключены нормали в шейпдате.
Так чтобы источники освещения не оказывалм на него никакого влияния!
NiUVController - передвигает звезды!
В дополнение к тому, что они и так реагируют на смену взгляда игрока за счет Билборд ноды.
При этом, сам объект В РАЗЫ БОЛЬШЕ самого меча.
Т.е. фактически игрок находится внутри оного огромного куба!
Это нужно для получения эффекта глубины и размещения лезвия на его фоне гарантированно и в любой проекции.
Т.е. не важно в какой позе будет игрок и откуда смотреть, лезвие всегда окажется на фоне звезд.
И не получится, что какая-то часть потеряет свою "текстуру".
Если дополнительно добавить на этот куб свойства тумана:
| ||||||||
NiNode
|
Bounding Box
|
Пустая нода для удобства выделения меча в редакторе.
Никакой иной функции.
|
В динамике, объем виден лучше.
|
Частицы позволяют получить эффект подобный "оригинальному" мечу Рагнаблейду из Рубак (Slayers)
|
Дальнейшее развитие.
Различные свойства альфа позволяют получить призрачный меч.
Т.е. одним мечом дело не ограничилось, было сделано несколько версий.
|
Равно как и маски текстур с niFog - открывают простор по генерации "духовных" "энергетических" и пр. "жидких" мечей.
|
Ореолов можно и парочку... ярко синий и розовый.
И конечно множество искр! Куда ж без них? ))
|
Руби их Рагнаблейд!(С)
Или что-то в этом роде(С)
|