Количество треугольников для модели удваивается во время рендера

Я работаю с движком Trinigy 3d, и он сообщает, что модели имеют в два раза больше треугольников во время рендеринга, чем на дисплее модели (скажем, 4000 вместо 2000). Если я отрисовываю модель с дополнительным контурным шейдером, она выдает 6000 треугольников, так что это не простое дублирование. В чем может быть проблема?

3 ответа

Решение

Дополнительные проходы шейдеров (как, например, ваш контурный шейдер) обычно увеличивают количество треугольников, отображаемых для модели, поскольку они должны отображаться несколько раз. Если вы используете режим прямой визуализации, каждый динамический источник света будет также увеличивать количество визуализируемых треугольников, поскольку каждый динамический свет, влияющий на модель, требует его повторной визуализации.

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

Вероятно, зависит от сложности шейдера / освещения. Если у вас есть два источника света, высока вероятность того, что сетка визуализируется один раз за источник света (это также объясняет, почему при использовании контурного шейдера увеличивается число, может потребоваться еще один проход). Проверьте, можно ли выполнить рендеринг без каких-либо эффектов / материалов / и т.п. применяется. (Отказ от ответственности: я никогда не использовал движок Trinigy)

Это выходит за рамки моей компетенции, но, возможно, в нем включен двусторонний рендеринг, и каждый треугольник учитывается дважды.

Другие вопросы по тегам