Texture Effect - how to create fake mirrors
Играем в вОмпира, или как расширять красоты игры!
Тут два метода.
Фактически, можно обойтись и без 3д МАХа, и нифскопа.
Но некоторые объекты могут требовать обработки для получения правильного перевернутого отражения.
Получится очень живенькое зеркало пола.
Со стенам будет сложнее...
Хотя если использовать
капсулы и скрипты, благовременно смещающих капсулу от столкновения с игроком, это вполне возможно уместить и в небольшие помещения.
См. Expedition to Mzelthuand
https://www.nexusmods.com/morrowind/mods/45229?tab=images
Таким образом, в плагине, организовано отражение помещения в окне портала.
При входе в портал, игрок, БЕЗ загрузки области оказывается в увиденном помещении.
Т.е. он перемещается скриптом в приделах текущей локации.
Поправка (от 06 2020).
Не прошло и 10 лет с момента тех тестов с отзеркаленными объектами (
это был 2014ый осень если что) и создание порталов в Экспедиции в Mzelthuand (2017 осень), как им в помощь пришли
свойства трафарета!
Которые позволяют прятать слона посреди комнаты, в прямом смысле.
Т.е. используя трафареты, можно размещать цели для отражение в любом месте сцены.
Игрок не будет видеть их находясь прямо в них!
А
SwitchNode позволит проходить через такие объекты, как через воздух.
|
|
|
Анимированные ворота.
|
Внушительно отверзаются в удалении...
|
Если не получается клонировать игрока, то можно скриптом размещать под игрока "тень"!
Всяко лучше чем ничего.
|
Из минусов:
- некоторая потеря фпс.
- нельзя использовать воду. Т.е. вода не должна закрывать пол, иначе прозрачность теряется.
- невозможно разместить в маленьком объеме. *без свойств трафарета, если они используются, то возможно.
В теории, также можно добавить и отражение игрока, клонировав его "за стекло".
Попробовать провернуть, это, посредством шаманства со скриптами
МВСЕ 2.0 разместив "за стеклом" точную копию игрока, которая будет проигрывать анимации в такт его движениям.
Но только за стену, а не под пол, движок не дает возможности, переворачивать "живые" объекты кверху ногами.
Покрайней мере, нормально перевернуть НПС\Существа не получалось.
Второй метод.
Проще, доступнее и лучше для фпс.
Но не столь "реалистичен".
Достаточно повесить на поверхность объекта
текстурный эффект, с текстурой полученной из игрового скриншота.
Далее разместить "зеркало" так, чтобы "отражение" максимально совпало со своим "оригиналом".
|
|
|
Это скриншот сделан в редакторе, но не суть.
|
А так это выглядит на модели.
Немного бампа для эффекта мыла.
|
Настройки.
|
NiTextureEffect должен быть в режимах:
Texture Clamping ->WRAP_S_WRAP_T (это важно для правильной проекции изображения!)
Unknown Vector = Z -1
Иначе эффект будет неразличим.
Фог и Энвиромент позволяют использовать черный фон.
И самое главное!
Собственно и вся премудрость.
Берем поверхность, добавляем эффект, меняем Coordinate Generation Type на SPECULAR_CUBE и радуемся.
|
|
|
LIGHT и Clipping Plane = 0
|
LIGHT и Clipping Plane = 1
Свет выключен.
|
LIGHT и Clipping Plane = 1
Свет включен.
|
Примечание.
Собственно доступны только два варианта, создания "зеркал", увы.
Более продвинутые техники создания текстурных эффектов, также, в текущей версии движка, нам не доступны.
Равно (по имеющимся данным), движок этой версии, не умеет правильно работать с камерами в ниф файлах. Либо, еще не все раскопали.
Впрочем, даже имеющегося арсенала, хватает для создания красивых и выразительных эффектов.