ПрограммированиеТерминыГрафика

MRT: Multiple Render Targets

MRT (Multiple Render Targets) — метод одновременного рендеринга в несколько текстур.

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

Вывод в несколько текстур возможен только в пиксельном шейдере.

В OpenGL GLSL для этого есть встроенная output переменная:
gl_FragData[n]
gl_FragData[0] - дублирует gl_FragColor, но вместе они использоваться не могут.

В DirectX вывод происходит следующим образом:
//Описывается вывод пиксельного шейдера
struct PS_OUTPUT
{
  float4 Out1 : COLOR0;
  float4 Out2 : COLOR1;
};

PS_OUTPUT ps_main( PS_INPUT In ){...}

Поддерживается картами GeForce6ххх и выше, а также Radeon 9ххх и выше.

Что такое MRT: Multiple Render Targets?

#render, #шейдеры, #текстуры

23 мая 2006 (Обновление: 5 фев 2010)