如果您在Safari中查看以下JSFiddle(摘自https://webglfundamentals.org/webgl/lessons/webgl-shadows.html,您会发现它看起来与其他浏览器有所不同,因为深度纹理始终是完全黑色的:
https://webglfundamentals.org/webgl/lessons/webgl-shadows.html
我已经基于此实现了自己的实现,并且遇到了同样的问题。在调用gl.clea或gl.drawElements之后调用getError时,WebGL返回gl.INVALID_FRAMEBUFFER_OPERATION。我认为帧缓冲区的设置有问题,但是我尝试过的任何方法都无济于事。预先感谢!
对于Safari,即使样本未使用,也需要设置颜色附件