Почему современные программы 3D-рендеринга рендерится в виде скручивания вместо отсканированного рендеринга в прошлом?

99
14
1
Лучший ответ
460

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

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

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

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

И рендеринг по спирали поддерживает эту согласованность лучше, чем мозаика слева направо.

Такие шаблоны, как кривая Гильберта, являются хорошим способом поддержания пространственной когерентности при выполнении последовательной работы над 2D-плоскостью. Я видел, как некоторые рендеры использовали этот шаблон.

ответил(а) 2019-12-01T15:01:53+03:00 11 месяцев, 4 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема