首页 文章

金属纹理格式

提问于
浏览
2

我在Swift中使用格式 .bgra8Unorm 声明了一个金属纹理 . 现在在金属计算 kernel 我使用 half 数据类型访问它(我相信Apple的例子是这样做的) .

texture2d<half, access::sample> inTexture [[ texture(0) ]]

以这种方式访问 bgra8Unorm 纹理(通过采样器)和/或自动写回来自动打包和解压缩8位整数的 half 值?当我向纹理写入负 half 值时会发生什么?

1 回答

  • 3

    Yes . 当使用规范化的无符号整数分量写入纹理时,这些值被有效地钳位到[0,1],然后按格式的最大值(在这种情况下为255)进行缩放 .

相关问题