我正在尝试使用WebGL中的浮点纹理实现计算,该计算涉及多个步骤,在每个步骤之间切换输出纹理。并非完全出乎意料,我的初步实现会导致黑屏。
有没有办法在WebGL中转储纹理内容,或者以其他方式检查它?在这种情况下,这将非常有用,可以逐步完成计算并检查纹理的内容是否正确。
我尝试了一些我发现的WebGL调试工具,但他们要么没有这种能力,要么就像Chrome Canvas Inspector那样不存在。我知道我可以这么做,重写我的代码停止在不同的步骤,将输出渲染为颜色,将结果保存到图像然后再次提取值,但我希望有一个更简单,更方便办法。
答案 0 :(得分:0)
要阅读您的一个子结果,您可以尝试:
readPixels
https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.12
或texImage2D
,它是重载的,是较大的"纹理对象界面的一部分"。一个签名的行为几乎与readPixels
相同
https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.8
然后可以将数据作为二进制数据从javascript中获取。但我想这是你不想要的艰难方式。