Size: a a a

HoudiniForGames Chat

2021 April 02

V

Viacheslav in HoudiniForGames Chat
Tertium Organum
теперь я не у компа) а что значит - делаем трипланарку? к объекту применяем материал с ворлдалигном?
Ну да.
Что такое трипланарка вообще? Это когда мы не просто берём текстуру, а берём три семпла одной и той же текстуры - каждый семпл вдоль одной из плоскостей, XY, YZ и XZ и потом их смешиваем.

Двухпланарка - это дволь двух осей.

Однопланарка (обычное текстурирование) - одна ось.

Соответственно, сделав такое вот разбиение, как на скринах выше - мы существенно разгружаем вычислительный конвейер (и особенно работу с памятью, в виде текстурных выборок). Особенно, если у нас текстура не одна, а много: на ландшафте например мы обычно смешиваем много текстур разом и получается, скажем, три текстуры (для примера - почва, трава и камень), да ещё и каждую из них вдоль трёх осей, получаем 9 текстурных выборок для каждого пиксела. А если сюда прибавить нормали, АО, металленс, рафнес и т.д. - то и все 20-30 выборок.

После оптимизации же (скрины выше) мы это количество радикально уменьшаем для ОБЩЕГО случая. Т.е. понятно, что иногда всё равно будут случаи когда у нас 90% экрана будет залито красным (трёхпланарка), но в среднем по больнице - у нас будет в основном либо двухпланарка (жёлтое) либо однопланарка (зелёное).
источник

V

Viacheslav in HoudiniForGames Chat
Tertium Organum
да, вот у меня с этим были траблы, слишуом крутой подъем тянутый
Это скорее всего либо нехватка полигонажа, либо чуть-чуть некорректные нормали. Либо и то и другое.

Т.е. если у тебя резкий стык двух плоскостей - одна вертикальная, вторая горизонтальная, там так или иначе возникнет этот баг. Лечится он в основном только добавлением дополнительных граней, чтобы немного сгладить нормали.

ну и коэффициенты трипланарки тоже нужно тюнить. Я, правда, не знаю можно ли их тюнить в УЕ... Но как минимум можно точно самом написать трёпланарку там и она точно будет настраиваться как хочешь.
источник

V

Viacheslav in HoudiniForGames Chat
В целом я согласен с @AkyJla , оптимизация - это процесс бесконечный: даже когда уже заоптимизировал всё, что только можно - всегда можно найти какие-то ещё частные случаи и можно работать над ними.

Потому очень важно уметь просто вовремя остановиться и сказать себе "всё, это уже получилось нормально, а большего нам и не надо" :)
источник

IK

Ilya Kuzmichev in HoudiniForGames Chat
Viacheslav
Ну да.
Что такое трипланарка вообще? Это когда мы не просто берём текстуру, а берём три семпла одной и той же текстуры - каждый семпл вдоль одной из плоскостей, XY, YZ и XZ и потом их смешиваем.

Двухпланарка - это дволь двух осей.

Однопланарка (обычное текстурирование) - одна ось.

Соответственно, сделав такое вот разбиение, как на скринах выше - мы существенно разгружаем вычислительный конвейер (и особенно работу с памятью, в виде текстурных выборок). Особенно, если у нас текстура не одна, а много: на ландшафте например мы обычно смешиваем много текстур разом и получается, скажем, три текстуры (для примера - почва, трава и камень), да ещё и каждую из них вдоль трёх осей, получаем 9 текстурных выборок для каждого пиксела. А если сюда прибавить нормали, АО, металленс, рафнес и т.д. - то и все 20-30 выборок.

После оптимизации же (скрины выше) мы это количество радикально уменьшаем для ОБЩЕГО случая. Т.е. понятно, что иногда всё равно будут случаи когда у нас 90% экрана будет залито красным (трёхпланарка), но в среднем по больнице - у нас будет в основном либо двухпланарка (жёлтое) либо однопланарка (зелёное).
ты кастомный террейн в анриле написал?
источник

SD

Shark Dark in HoudiniForGames Chat
Viacheslav
В целом я согласен с @AkyJla , оптимизация - это процесс бесконечный: даже когда уже заоптимизировал всё, что только можно - всегда можно найти какие-то ещё частные случаи и можно работать над ними.

Потому очень важно уметь просто вовремя остановиться и сказать себе "всё, это уже получилось нормально, а большего нам и не надо" :)
старая работа дизайнером в полиграфии приучила к правилу вёрстки - главное, второстепенное, и т.д...
сильно работать надо над главным, и чем ниже статус, тем проще относиться. Не значит ,что ну совсем на отъебись, но не более 10 минут на сложный меш дальника
источник

IK

Ilya Kuzmichev in HoudiniForGames Chat
Ilya Kuzmichev
ты кастомный террейн в анриле написал?
потому что на дефолтный материалы назначаются по-кусочно где-то в глубине движка
источник

SD

Shark Dark in HoudiniForGames Chat
Ilya Kuzmichev
потому что на дефолтный материалы назначаются по-кусочно где-то в глубине движка
ща он и анрил перепилит))😆
источник

IK

Ilya Kuzmichev in HoudiniForGames Chat
да это по идее не такой сложный фикс, я делал же
источник

IK

Ilya Kuzmichev in HoudiniForGames Chat
другое дело, что тут с нуля похоже быстре будете сделать, чем существующий террейн патчить
источник

T

Tertium Organum in HoudiniForGames Chat
да, можно ручками собрать, это просто. лан попозже прочитаю
источник

V

Viacheslav in HoudiniForGames Chat
Ilya Kuzmichev
ты кастомный террейн в анриле написал?
Я собственный писал вне анрила, много разных вариантов делал.

Хотя учитывая, что там появились (я так понял с 4.26 версии?) текстурные массивы, есть мысль что однажды можно попробовать и под УЕ написать.
источник

T

Tertium Organum in HoudiniForGames Chat
да не нужны они, и так работает
источник

T

Tertium Organum in HoudiniForGames Chat
шаред семплер
источник

IK

Ilya Kuzmichev in HoudiniForGames Chat
Viacheslav
Я собственный писал вне анрила, много разных вариантов делал.

Хотя учитывая, что там появились (я так понял с 4.26 версии?) текстурные массивы, есть мысль что однажды можно попробовать и под УЕ написать.
ну трюк с подменой трипланара на обычную текстуру — это нужно как-то пер-чанково уметь шейдер подменять, видимо тоже из какой-то индексной текстуры
источник

IK

Ilya Kuzmichev in HoudiniForGames Chat
Tertium Organum
шаред семплер
шаред семлер не избавляет тебя от костов слоев, которые не видны
источник

T

Tertium Organum in HoudiniForGames Chat
а массив как избавляет
источник

V

Viacheslav in HoudiniForGames Chat
Ilya Kuzmichev
ну трюк с подменой трипланара на обычную текстуру — это нужно как-то пер-чанково уметь шейдер подменять, видимо тоже из какой-то индексной текстуры
Это лучше делать не перчанково, а перпримитивно.
Но, естественно, требуется препроцессинг, который это всё и рассчитает, чтобы не рантайме (ну или хотя бы не в рилтайме) это делать.
источник

IK

Ilya Kuzmichev in HoudiniForGames Chat
Tertium Organum
а массив как избавляет
в массив можно набить значительно больше слоев, чем у тебя в материале сделано семплеров
источник

IK

Ilya Kuzmichev in HoudiniForGames Chat
в вичере было всего 4 слоя на террейне, через индексную и весовую текстуру читался из массива материал
источник

IK

Ilya Kuzmichev in HoudiniForGames Chat
те 12 семплеров
источник