Отложенное освещение и затенение

Отложенное освещение и затенение (англ. deferred shading) — одна из основных методик, применяемых в трёхмерной графике. Главная задача этой программной техники — обработка эффектов в визуальной сцене. При правильной работе алгоритма отложенного рендеринга вычислительный процесс разделяется на мелкие составляющие. После этого они заносятся в буферную память для дальнейшего их объединения. Как и it аутсорсинг, данный метод действует незамедлительно. Это и есть основное отличие данного метода от стандартных аналогов.

Основные достоинства отложенного освещения и затенения

В последнее время современные аппаратные ресурсы используют множественные цели рендеринга. Это направлено на исключение избыточных трансформаций вершин. Таким образом, после построения всех буферов происходит их считывание из алгоритма шейдеров, а затем начинается их объединение. Сложность вычислений и пропускная способность памяти, которые затрачиваются на рендеринг необходимой сцены, становятся видимыми, а это в свою очередь уменьшает сложность освещения. В этом и заключается основное преимущество отложенного освещения и затенения. Оно способно работать с «грубым» и «начальным» запуском z-буфера. Это позволяет должным образом построить упрощённое управление наиболее усложнёнными участками освещения, уменьшить конвейер визуализации на программном уровне, а также упростить управление различными шейдерами.

Метод отложенного рендеринга находит всё большее применение в ПК-играх. Это связано прежде всего с тем, что эта методика позволяет использовать бесконечное число различных источников света, а также снижает к минимуму сложность исполнительных шейдерных инструкций. Возможно, вскоре мы увидим применение трёхмерной графики на веб-сайтах, таких как www.alp.ru. Однако такие преимущества ещё не изучены в достаточной степени.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>