Голубой цвет - это значения RGB 0.0, 1.0, 1.0
.Поскольку глубина (обычно) представляет собой один канал, представляющий Z, при выборке из текстуры он возвращается в первый канал, красный.Пропущенные каналы зеленого, синего и альфа-канала заменят 1.0 на аппаратное обеспечение.
Ваша ссылка для загрузки не работает, так как я подозреваю, что это 2 года.возвращая семантику COLOR0
и COLOR1
(обратите внимание, что глубина равна float4
, несмотря на то, что выводом является текстура с одним каналом):
struct PS_OUT { float4 color : COLOR0; float4 depth : COLOR1; };
PS_OUT ps_main( PS_INPUT Input )
{
PS_OUT Output;
// your color shader here
Output.color = myFinalColor;
Output.depth = myFinalDepth; // e.g. Input.posz / Input.posw from your vertex shader
return Output;
}
В зависимости от настроек камеры вы можете получить что-то вроде