Особый случай для отложенного рендеринга - PullRequest
0 голосов
/ 10 июня 2018

Интересно, возможно ли следующее:

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

Затем я хочу использовать эту информацию на втором проходе для получения более сложного изображения.

Дело в том, что я хочу не только пропустить закупоренные фрагменты в вычислениях, я хочу пропустить что угодноэто не результат растеризации.

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

Создание карты фрагментов только из первых видимых прозрачных фрагментов.

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

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

1 Ответ

0 голосов
/ 10 июня 2018

Есть несколько способов достичь этого.

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

И трудно ответить на ваш вопрос без дополнительной информации.

...