0

我在 Unity 中有一个渲染纹理,并且正在对其应用连续的着色器,如下所示:

     Graphics.Blit(Tex1, Tex2, myMaterialA);
     Graphics.Blit(Tex2, Tex3, myMaterialB);
     Graphics.Blit(Tex3, Tex4, myMaterialC);

在我的着色器中,我只使用浮点数,但由于输出纹理是 RGBA 32 位,所以输出的颜色值在 8 位上进行量化。

在我的示例中,有没有办法保持中间结果(Tex2、Tex3)的浮点精度,并且只将最终纹理 Tex4 转换为 RGB 32 位?

4

1 回答 1

0

Texture2D 和 RenderTexture 的格式都可以不同于 ARGB32。

https://docs.unity3d.com/ScriptReference/TextureFormat.html https://docs.unity3d.com/ScriptReference/RenderTextureFormat.html

于 2019-01-14T18:32:01.057 回答