DirectX11 HLSL 颜色输出问题
请教大家,最近想了解一下DirectX11,就用SDK向导生成了个工程。但后来发现Pixel Shader中,返回的颜色float4和最终输出到屏幕上的颜色,不是线性关系。
例如
float4 PSMain() : SV_TARGET
{
return float4(0.5, 0.5, 0.5, 1.0);
}
最终输出的颜色是 R188 G188 B188。而在OpenGL或DirectX9中,应该是R127 G127 B127的。
用几组数据测试后,发现规律如下:
float RGB
0.008 22
0.04 56
0.05 63
0.1 89
0.2 124
0.5 188
1 255
请教,DirectX11是不是有设置颜色模式的地方,把HLSL输出搞成线性内差?