×
Menu

Decal map - notes

 
Примечание.
Декали - можно использовать для запекания теней  в сцене!
Т.е. может использовать вместо, или вместе с Dark картой.
Но в отличие от ДаркМап всегда требует альфа канал!
Т.к. уровень воздействия на базовую текстуру определяется через альфа канал + альфа свойства, а не через уровень черного!
Также, если в объект есть альфа свойства, декаль, не создает эффекта маски, в отличие от той же ДаркКарты.
 
Примечание.
Данные новые, за 03 2020, раньше считалось, что для работы альфа контроллера всегда необходимы и свойства альфы..
Как оказалось, прозрачностью этой карты, все таки, можно управлять через Альфа контроллер!
Т.е. если на модели нет альфа свойств, но есть ТОЛЬКО этот контроллер, то можно менять прозрачность только для текстуры декалей.
Не действует на остальные слоты текстур, но только на декали!
Альфа контроллер воздействует на все слоты декалей и не на что больше!
Т.е. как оказалось, декали могут отрабатывать прозрачность сами в себе, без добавления свойств альфа объекту.
Сам по себе, метод совмещения декалей и альфа контроллера, позволяет лучше оптимизировать модели!
Например; не требуется создавать второй слой, либо иной шейп, но можно изобразить, окаменение троля, через использование этой текстуры и альфа контроллера. Уместив все на один слой одного шейпа.
Пример подобной модели, в которой нет альфа свойств, но есть альфа контроллер.
В результате, меняет свою прозрачность только текстура декалей!
 
Примечание.
Помимо этого, выяснилось, что эта карта воздействует на текстурные эффекты!
- для эффекта в режиме Light позволяет прятать оный.
Т.е. непрозрачные участки (альфа канал белый) текстуры декалей будет его скрывать.
Прозрачные, т.е. с черным цветом в альфа канале, будут показывать.
 
- для эффекта в режиме Shadow, результат ровно обратен.
Непрозрачные участки текстуры декалей, проявляют оный, а прозрачные, наоборот, скрывают.
Что позволяет создавать управляемые маски.
Например, см. здесь.
 
Т.е. управляя уровнем прозрачности в альфа канале текстуры декалей, можно воздействовать на текстурные эффекты этих типов!
При этом, текстурный эффект в режиме тени, начинает работать близко к заявленному!
Т.е. его текстура начинает затемняться согласно справке.
За уровень "прожаривания" отвечает именно текстура декалей.
Если она светлая, прожаривания нет.
Если темная - есть.
 
Примечание.
Однако, наличие декалей, не отменяет КТД при использовании текстурного эффекта в режиме Тени, если в модели есть свойства альфы.
 
Примечание.
Карты декалей должны идти последовательно!
Т.е. нельзя использовать декаль2, не включив декаль0 и декаль1.
Редактор сразу улетит в ошибку.
правильно.
неправильно! Такой файл приведет к вылету редактора и игры.
Если указано возможность использования большего числа текстур, чем реально используется, это не приводит к ошибкам.
Т.е. если указано 13, но используется только decal0, это не создаст проблем.
 
Примечание.
Наличие декалей, также не отменяют необходимость маски по дарк карте, для текстурного эффекта в режиме света, при работе оного на системе частиц.
 
Примечание.
Декали могут прятать текстурные эффекты означенных выше типов.
Т.е. можно не только создавать эффект луны скрывшейся за облаками, но и создавать более потертую броню, или оружие.
Если добавить к этому черные текстуры на слоте Бампа + МСП включающие использование Gloss карты, то в арсенале модмейкеров появилось еще одно мощное заклинание!
Чтобы это использовать, достаточно добавить в модель альфа контроллер с заданным значением прозрачности во всех ключах.
Потребуется создание анимированной ноды..
Достаточно одного кадра анимации.
Т.е. в 0.0000 установить желаемое значение прозрачности в FloatData альфа контроллера.
Если требуется создать более сложную анимацию, то, все как обычно.
Для каждого ключа по времени указывается желаемое значение прозрачности.
 
Примечание.
Рекомендуется помещать эту карту по UV отличной от нулевой.
Это дает больше пространства для маневра в управлении текстурами.
 
Примечание.
- анимация Flippcontroller-ом, поддержана.
- анимация UV контроллером, поддержана.
- анимация NiAlphaController-ом, поддержана!
Обращайте внимание, при использовании UV контроллера, анимируемая им текстура должна находиться всегда по 0 каналу!
 
Примечание.
В отличие от прочих текстур, можно использовать от 1 до 7-8.
При этом все они взаимодействуют между собой, накладываясь одна поверх другой.
*учитывается альфа канал, да.
 Has Decal 0 Texture — активно по умолчанию. Texture Count 7.
 Has Decal 1 Texture — для активации этого слота нужно выставить Texture Count 8. Иначе не активно.
 Has Decal 2 Texture — для активации этого слота нужно выставить Texture Count 9. Иначе не активно. 
 Has Decal 3 Texture — для активации этого слота нужно выставить Texture Count10. Иначе не активно. 
 Has Decal 4 Texture — для активации этого слота нужно выставить Texture Count11. Иначе не активно.*
 Has Decal 5 Texture — для активации этого слота нужно выставить Texture Count12. Иначе не активно.*
 Has Decal 6 Texture — для активации этого слота нужно выставить Texture Count13. Иначе не активно.*
*требуется правка ниф.хмл файла.

Примечание.
Можно использовать для наложение основной текстуры для больших поверхностей.
Например больших строений.
Т.е. создать в 3д редакторе красивую и детализированную текстуру, добавив в нее альфа канал.
Наложить ее на модель по слоту декалей.
В то время как на слот Detail кинуть простую безшовную текстуру и установить небольшой шаг плитки.
Получится эффект маскирования замыливания большой текстуры при приближении к объекту.
рисунки даны по слоту декалей.
роль базовой текстуры выполняет карта detail.
 
Примечание (2018-20).(устаревшие данные)
4ая текстура декалей, может вызывать проблемы в игре и редакторе, т.е. приводить к вылету на десктоп (КТД).
Впрочем, это, скорее всего, баг нифскопа.
Либо это особенность движка, т.к. в справке упоминается об использовании только 2х карт детализации.
А плагин к 3д МАХу поддерживает экспорт только одной карты детализации.
Так или иначе, через Нифскоп получалось стабильно добавлять не более 3х Декалей.
 
Примечание.
Дальнейшие тесты (2022) позволили выяснить, где примерно прятался хомяк.
Т.е. модели МВ могут использовать максимум 10 текстур одновременно и не более 7-8 декалей.
При этом, если использованы все 6 основных слотов, то не более 4х декалей.
Если использован базовый (или любой другой слот) то - 7 декалей.
По видимости, стабильно можно использовать модели только 7мью декалями, если все остальные слоты пустые.
Включение 8ой декали, приводит к вылету редактора при попытке подвинуть камеру.
Но в игре, все работает нормально.
Равно - если используются все 6 слотов + 5 декалей, будет вылет редактора.
 
Редактор свободно принял модель, сначала с 4-мя, затем с 5-тью и с 6-тью картами декалей, а затем и 7-мью и не имел с ними никаких проблем.
Но после добавлении 8-ой, при попытке подвинуть модель, улетел в КТД.
Т.е. получился баг сходный тому, что имели ранее при попытках добавлять 4ую карту декалей.
При наличии текстур в других слотах.
При этом, СкенеВиювер свободно открывает файл с 8-мью декалями, но после добавления 9-ой ловит КТД.
 
Т.е. можно стабильно использовать 4 текстуры декалей одновременно вместе со всеми прочими текстурами.
Хотя, в большинстве случаев, за глаза, хватит и 2х.
 
Нифскоп.
 
Однако, на этой модели при попытке ее подвигать происходил вылет.
ТЕС КС.
 
Примечание.
Настройка для Ниф.хмл файла, дабы напихать "еще больше прекрасного"(С)
        <add name="Has Decal 0 Texture" type="bool">Do we have a decal 0 texture?</add>
        <add name="Decal 0 Texture" type="TexDesc" cond="Has Decal 0 Texture">The decal texture.</add>
        <add name="Has Decal 1 Texture" type="bool" cond="Texture Count &gt;= 8">Do we have a decal 1 texture?</add>
        <add name="Decal 1 Texture" type="TexDesc" cond="Has Decal 1 Texture">Another decal texture.</add>
        <add name="Has Decal 2 Texture" type="bool" cond="Texture Count &gt;= 9" >Do we have a decal 2 texture?</add>
        <add name="Decal 2 Texture" type="TexDesc" cond="Has Decal 2 Texture">Another decal texture.</add>
        <add name="Has Decal 3 Texture" type="bool" cond="Texture Count &gt;= 10" >Do we have a decal 3 texture?</add>
        <add name="Decal 3 Texture" type="TexDesc" cond="Has Decal 3 Texture">Another decal texture.</add>
        <add name="Has Decal 4 Texture" type="bool" cond="Texture Count &gt;= 11" >Do we have a decal 4 texture?</add>
        <add name="Decal 4 Texture" type="TexDesc" cond="Has Decal 4 Texture">Another decal texture.</add>
        <add name="Has Decal 5 Texture" type="bool" cond="Texture Count &gt;= 12" >Do we have a decal 5 texture?</add>
        <add name="Decal 5 Texture" type="TexDesc" cond="Has Decal 5 Texture">Another decal texture.</add>
        <add name="Has Decal 7 Texture" type="bool" cond="Texture Count &gt;= 13" >Do we have a decal 7 texture?</add>
        <add name="Decal 7 Texture" type="TexDesc" cond="Has Decal 7 Texture">Another decal texture.</add>
        <add name="Has Decal 8 Texture" type="bool" cond="Texture Count &gt;= 14" >Do we have a decal 8 texture?</add>
        <add name="Decal 8 Texture" type="TexDesc" cond="Has Decal 8 Texture">Another decal texture.</add>
        <add name="Has Decal 9 Texture" type="bool" cond="Texture Count &gt;= 15" >Do we have a decal 9 texture?</add>
        <add name="Decal 9 Texture" type="TexDesc" cond="Has Decal 9 Texture">Another decal texture.</add>
        <add name="Has Decal 10 Texture" type="bool" cond="Texture Count &gt;= 16" >Do we have a decal 10 texture?</add>
        <add name="Decal 10 Texture" type="TexDesc" cond="Has Decal 10 Texture">Another decal texture.</add>
Т.е. для активации 4ой декали, следуют прописать в Texture Count = 11, а для 6ой = 13.
И так далее.
 

1 карта декалей
3 карты декалей.
Полный парад, все карты включены.
Кубы в нижнем ряду.
1 карта декалей.
3 карты.

 Выдержка из оригинальной справки. (NDL Gamebryo 1.1)
 
Decal Maps are RGBA Maps that define overlays on top of the Base Map. The alpha channel defines a blend between the Base Map's color and the decal's color. Wherever the decal is opaque, the decal will be drawn. Wherever the decal is translucent, the Base Map will show through. Decal Maps are useful for adding confined detail to a large Base Map. Examples include damage scorch marks, bullet holes, skid marks, and lettering.
 
Unlike other forms of multitexture, a single object may have more than one Decal Map. Unlike other "slots" in the multitexture property, there is an entire array of decal slots. Decal Maps are applied in the order in which they appear in the array. As a result, decals can be made to overlay not only the base texture, but each other as well. Each decal can have its own set of texture coordinates (UV's), and can thus be applied independently.
 
Decal maps are useful for adding confined detail to a large base map.  Examples include:  damage scorch marks, bullet holes, skid marks, and lettering.  The "Decal Map" field holds a texture that will be alpha blended on top of the base texture.  Unlike other forms of multi-texture, a single object may have up to two decal maps.  Decals are applied in the order in which they appear in the array — creating a layering effect.  The Gamebryo Maya Plug-in will translate each texture placed into the Decal Map slot.  As a result, decals can be made to overlay not only the base texture, but each other as well.  Each decal can have its own set of texture coordinates (UVs), and can thus be applied independently.