【发布时间】:2023-03-16 09:14:01
【问题描述】:
所以我是第一次学习 WebGL,但我很难理解 WebGL 颜色。
我担心的是我已经看到了 2 种格式或约定来编写 RGBA 颜色数据(或向量,如果它们被称为?-关于着色器)
Mozilla 使用 0 到 255 范围内的颜色:
但是,我也看到过其他情况,开发人员(例如 YouTuber)在 0 到 1.0 的范围内使用颜色,
这是一种偏好吗?您在每种情况下使用什么约定是强制性的吗?如果是偏好而不是强制,我可以将两者混合搭配吗?浏览器有偏好吗?
例如关于混合,[1.0, 255, 1.0, 255] 是完全不透明的白色吗?
【问题讨论】:
-
您的第一个示例显示了一个 ImageData 对象,该对象的数据是
Uint8array,因此值是从 0 到 255(顺便说一句,它似乎是 context2d API 文档)。在视频中,他使用了webglContext.clearColor,它接受GLclampf值(32 位浮点数介于 0 和 1 之间)。您使用 API 接受的内容。 -
@Kaiido JavaScript 有多奇怪?我想他们会建立一种标准的方式来解决他们所有 API 中的颜色等简单问题
-
@DaMaxContent “像颜色一样简单”。你刚刚让一大群图形程序员转入坟墓。
-
@Paul-Jan 我想这就是标准合规性和图形编程冲突的地方。作为一个javascripter,这对我来说是新的,坦率地说,它不适合这种语言。毕竟,“Vanilla”JavaScript 的实际名称 是 ECMAscript。 *讽刺*我反驳说“'你使用 API 接受的东西'刚刚让 ECMA 的前辈在他们的坟墓中转身”
标签: javascript canvas colors webgl