|
|||||||
![]() |
Градиент для эффекта.
Да, достаточно одной полоски по правому краю текстуры, плавно уходящей в уровни черного.
Яркость - по вкусу. Чем темнее, тем призрак будет "призрачнее".
Яркий цвет сделает из призрака "неоновую рекламу", что впрочем уместно для электрических "аномалий" странных двемерских.
|
![]() |
Текстура для тела.
Размер текстуры не критичен, но, чем меньше тем лучше для фпс.
|
+ Маркер и КолиженСвитч
![]() +ЛодНода.
![]() + минус сетка тени и вертексколор свойства.
![]() |
Для начала подготовим его.
Поскольку у нас будет практически прозрачное существо, то имеет смысл, упростить себе задачу для перемещения его в сцене редактора.
А также, мы можем сделать его и вовсе "безтелесным"!
Т.е. плашка с именем объекта не будет появляться вовсе!
Для этого, добавим в модель алита, маркер (можно взять из модели маркера).
Не забываем добавить экстрадату МРК!
И сменим тип ноды в которой находятся сетчатые оболочки, на niCollisionSwitch флаг 8.
Если захочется чего-то еще более занятно, то поместить "тело" алита в ЛодНоду.
Так призрак будет возникать на указанном (здесь) расстоянии от игрока.
Пускай будет 0-1024 (один уровень)
Сурприз, да!
ЛодНода - не должна иметь имени, иначе есть риск нарушить работу анимации.
Это не в файле алита, но в каком-то другом файле, такое может произойти.
И еще, если не хотите чтобы тело призрака оставалось лежать после эээ его кончины и не хотите добавлять скрипт ifOndeath=1 Disable, то посмотрите в сторону добавления контроллера невидимости.
Так чтобы тело исчезало посредством анимаций.
Настроить его будет не сложно, тайминги завершения анимации кончины можно найти в KF файле существа.
Такой контроллер невидимости, размещаем либо на сетку, либо на корень скелета, т.к. видимые сетки крепятся к нему.
Здесь он помещен на Bip01, это скроет сразу все что надо.
Ах да!
Здесь у алита есть "тень"! Т.е. сетчатая поверхность tri Shadow.
Призраку, она вряд ли будет нужна - удаляем!
Равно как и niVertexColorProperties, они тут лишниее. На этом предварительную подготовку можно считать законченной!
Переходим к Вкусному!
|
![]() ![]() |
Создаем пустую ноду.
В нее помещаем еще одну простую niNode.
И уже в эту ноду, помещаем БилБорд ноду флаг 72.
Не забывайте добавить скрытый шейп!
В данном случае возьмем пирамидку маркера из ноды маркера и поставим ей флаг 3. Т.е. шейп необходим для правильной работы эффекта.
Т.е. здесь он выступает датчиком поворота к камере! Который собственно и необходим для БилБордНоды, что бы правильно ориентироваться в сцене (так сказать).
Также, размер такого скрытого шейпа, можно поставить 0.1.
Дабы он не "мешался" под ногами. Движок его видит, а нам не надо.
Впрочем, не забудьте заглянуть в шейпдату и поставить радиус 100.000!
Да, размер 0.1 (и ни в коем случае нельзя жать apply!) а радиус 100. и выше. Это также необходимо для правильной ориентации эффекта на камеру.
И навешиваем, на эту билборд ноду, текстурный эффект в режиме тумана.
В качестве текстуры используйте тот градиент, который нашли, или создали, перед редактирование ниф файла.
Полученную инсталляцию размещаем в состав скелета существа.
Здесь, добавляем в дети Bip01.
Так эффект будет лучше реагировать.
Полученный номер текстурного эффекта указываем в слоте Effects NiCollisionSwitch ноды в которой помещена тушка алита.
Это все базовые настройки!
- лод нода, которая прячет существо на расстоянии.
- колижен свитч нода в которую упакованы видимые сетки существа.
- билборд нода в которой находится эффект.
- который и наложен на ноду с потрохами алита.. :D
Переходим к тонким!
|
![]() |
Для текстурного эффекта они будут такими.
Size = 100
Clamp_S_Clamp
Effect_FOG_map
Sphere.
Здесь, самое главное размер!
|
![]() |
И посмотрим настройки позиции точки проекции эффекта в сцене!
Это ВАЖНО! Здесь, для управления оными используется, та самая вторая вложенная niNode в детях которой находится БилбордНода.
Ставим позицию -200 Y
Как ни странно, но это сместит ее под уровень земли.
Да, проецирование текстуры должно идти издалека и иметь большой размер.
|
![]() |
И финальные штрихи, собственно, окончательно, превращаем тушку алита в "облачко".
Т.е. получаем пустые от любых свойств шейпы.
|
![]() |
Одни из текстурных и материал свойств можно (сразу) скопировать на niCollsionNode.
Откуда они окажут эффект на все вложенные шейпы.
Либо, создать, эти свойства, с нуля, через Attach Properties.
В базовой слот текстурных свойств назначаем ту текстуру, которую упоминали в начале.
Т.е. чистый черный фон с прозрачностью.
Далее добавим:
- NiAlphaProperty с флагом 523 (threshold 255) или флагом 5.
- NiFogProperty, флаг 4, плотность 0.8 цвет синий.
- NiMaterialProperty все цвета поставим черными, прозрачность 1.0000!
- NiZBufferProperty флаг 3.
Примечание.
Если добавить бамп карту + дополнительный текстурный эффект в режиме блеска, то, можно существенно разнообразить результаты. Но базовые настройки останутся этими.
Высокие значение SIZE текстурного эффекта и значительное смещение родительской ноды.
Второй текстурный эффект, добавляется аналогично.
Делаем копию уже имеющегося текстурного эффекта, меняем ему тип с fog на env.
И назначаем на niCollisonSwitch ноду в компанию первого эффекта.
И, добавляем бамп карту, иначе, эффект может не появиться.
И?
А собственно и все!
Подключаем модель в редактор и смотрим, что у нас получилось! |
![]() ![]() |
Если было все правильно сделано, то вот.
Текстурный эффект работает по контуру сетчатых оболочек согласно их геометрии.
Чем геометрия сложнее, а градиент текстуры занимает большую площадь, тем плотнее будет очертание объекта. Из издержек...
Нет отсечения перекрытых объектов, но это "штатный" баг движка, с которым не ясно, что делать в принципе -_-
Если дополнительно поместить сетки в СортАджуст ноду, то можно получить изменение поведению текстурного эффекта, но это не решит проблему с перекрытием.
И да, сортаджуст нода, внезапно, приводит к "пляске" текстурного эффекта.
См. второй скриншот, где при движении мышью, эффект сместился.
Но стоит отпустить модель, как он вернется к состоянию с первого скриншота.
В игре, такая пляска будет при вызове меню.
Т.е. добавление ноды сортировщика, не оказывает явно положительного эффекта, к сожалению.
Добавление частиц к объекту?
Возможно!
Но это будет приводить к мерцанию сетки на их фоне.
В этом случае, уже придется использовать ноду сортировщик!
Изменив тип корневой ноды файла, на NiSortAdjustNode.
Использовать флаг = 64. *требует МВСЕ!
Тогда все вложенные объекты будут взаимодействовать, между собой, более аккуратно.
Но также, это приведет к пляске текстурного эффекта!
|
![]() |
Алит с картой бампа и текстурным эффектом в режиме блеска.
Сама текстура (блеска) не градиент, а "точка".
Что и дает смещение золотистого цвета к центру.
![]() Т.е. фог отрабатывает по "контору", а блеск наоборот, по центру.
Базовая текстура не менялась! Т.е. модель по прежнему сохраняет "полную" прозрачность по текстуре и альфа свойствам. Однако, эффект блеска, работает корректно.
|
![]() |
![]() И да, полголовы ему съел нифскоп, т.е. часть сетки черепа была удалена, но это пошло ему только на пользу! Правда ведь, правда?)))
|
![]() |
![]() |
Призраки в ассортименте!
Частицы используют bsParray контроллер для лучшего размещения частиц вдоль "тела".
Здесь же видно "пляску" - особенно хорошо видно, как гуар, высунулся из облака частиц, частично скрыв оное за собой.
|
Под водой, это тоже все работает.
А если альфа свойства указать как 4613 оставив исходную базовую текстуру, то можно получить более "материальный" призрак.
Здесь, это видно на рыбе.
|
![]() |
![]() |
Если играть с настройками поворота, или смещения проекции эффекта, можно управлять "акцентами" подсветки.
Т.е. менять ее сторону для придания объекту определенной выразительности.
|
Т.е. если сменить метод проекции со сферического на CG_WORLD_PERSPECTIVE, что позволяет управлять смещением и поворотом эффекта по модели.
|
![]() |
![]() |
|
Здесь, дополнительно использовался бамп.
Т.е. в базовых свойствах модели прописана текстура бампа и добавлен текстурный эффект в режиме блеска.
В динамике получился почти Миадзаковский Стиль.
Если быть точнее, то конечно, это стиль того призрачного червия из Хранителя Священного Духа. :D
|
![]() |
![]() |
Нпс, или Существо?
На выбор.
Т.к. можно создавать доспехи с такими эффектами.
А можно и существо одетое в доспехи.
А если подключить МВСЕ, то вполне реально создать "шейдер" накладываемый динамически на любой объект прямо в игре!
|
Да, призванная дремора в компании призраков!
|
![]() ![]() ![]() |
![]() |
Богато? Не то слово!
Играть настройками можно с чувством с толком с расстановкой и не забывать про "чувство собственного Достоинства"(С) :D
Сиречь, Достойному Деянию Достойный Путь!
|
Если добавить этот эффект (сам эффект и прочие настройки) на Shield(Weapon) Bone в файле существа, то и щиты и оружие примут призрачный вид.
|