В чем разница между тесселяцией и отображением смещения/рельефа?

Как можно прочитать здесь ссылке карты смещения в некоторых случаях "лучше заменить" для бамп-маппинга, тесселяция на основе карты смещения. Так в чем же основное различие между этими 3? Тесселяция каким-то образом требует меньше ядра GPU или использования памяти, имеет более гладкие модели? Какие из них фактически влияют на геометрию объекта?

23
задан NightKn8
25.02.2023 6:24 Количество просмотров материала 3465
Распечатать страницу

1 ответ

тесселяция в общих чертах-это просто разделение заданной геометрии на несколько кусков (обычно треугольников)

Что вы ссылаетесь на этапе тесселяции затенение введен в Директ Х11 и OpenGL 4.

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

в отображении рельефа вы визуализируете квадрокоптер и получаете текстуру с дополнительной информацией, вы все равно визуализируете его как один квадрокоптер, но делаете его более подробным. Е. Г. путем расчета освещения "реального" объекта от дополнительного текстуру и применить это на квад. Рисунок в указанной статье демонстрирует это довольно неплохо:

http://www.nvidia.com/docs/IO/91797/model_comparision.jpg

видишь, объектов рельеф-это все-таки сфера, хотя, похоже, это имеет неровности из-за правильно наносить тени.

с другой стороны, отображение смещения действительно преобразует вершины сетки на основе текстуры, а не просто действует так, как было бы преобразовано, и выполняет дальнейшие вычисления, такие как освещение с этой информацией. Этот доходит до высокой стоимости способа отображения большего количества примитивов (вершин). Чтобы получить предыдущее утверждение, чтобы увидеть вашу сетку в полном разрешении, вам нужно будет отрисовать 8192 треугольника вместо квадрата для всех квадратов в вашей сетке, поэтому вам нужно будет отрисовать все в самом высоком разрешении и сделать рендеринг до 4000 раз медленнее.

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

5
отвечен Theo 2023-02-26 14:12

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх