DirectX Color:为什么它不能是浮点数?

DirectX Color: Why can't it be a float?

本文关键字:浮点数 不能 Color 为什么 DirectX      更新时间:2023-10-16

在我的顶点声明中,我可以使用各种数据类型来表示颜色。 包括:

  • 国际
  • 双字
  • D3DCOLOR

但是我不能使用浮点数,它会导致我的着色器获得不正确的值。

我知道浮点数是 4 个字节,我列出的所有其他数据类型也是如此。 那么,为什么浮点数不起作用,而其他浮点数却起作用呢?

单个浮点数如何表示 4 个(A,R,G,B)组件?如果你想知道 int 是如何做到的,它在其 32 位(4 字节)值内包含 4 个字节。