0

有什么办法可以排放更多,例如。来自 GLSL 片段着色器的 4 个字节,如果实现不支持多个 FBO 缓冲区附件或“深”缓冲区格式?

例如,在使用 WebGL 或 OpenGL ES 时,如果必须在多个通道中重复部分计算以获得更多输出通道,则每个片段被限制为 RGBA 输出会使复杂的计算效率极低。

4

2 回答 2

1

您输出的不是以字节为单位,而是以components为单位。每个图像只能存储四个分量,因此每个输出图像只能输出四个分量。

如果您的硬件可以输出更多数据,那么它将允许您输出更多图像。它可以通过扩展来暴露它。如果不存在这样的扩展,则硬件不能,因此您也不能。

请注意,NVIDIA 有这样的扩展,因此他们启用了 ES 的硬件可能能够做到这一点。

于 2012-02-25T02:41:08.590 回答
-1

不,没有办法比通常的频道更有效地输出。这意味着需要在不止一次的过程中完成具有更多输出的计算。具有多个输出且共享代价高昂的中间结果的计算可能会将中间结果计算为之前的附加通道,但是开销很可能会消耗掉所获得的任何性能优势。

于 2012-08-18T10:19:40.903 回答