4

我正在将 ThreeJS 用于我在工作中开发的应用程序,特别是 WebGL 渲染器。大约一周半前它运行良好,但是当我今天回来工作时,尝试在 Chrome 中运行我的应用程序时出现此错误:

未捕获的类型错误:对象 # 没有方法 'getShaderPrecisionFormat'

我在 Chrome 中调试了我的应用程序,看起来 WebGLRenderingContext 没有方法“getShaderPrecisionFormat”;关于可能发生什么导致这种情况的任何建议?

谢谢!

4

2 回答 2

1

这应该在 r56+ 中修复。(可能在 r55 中,但我没有要检查的版本)

https://github.com/mrdoob/three.js/blob/master/src/renderers/WebGLRenderer.js#L7478

        if ( _gl.getShaderPrecisionFormat === undefined ) {

            _gl.getShaderPrecisionFormat = function() { 

                return {
                    "rangeMin"  : 1,
                    "rangeMax"  : 1,
                    "precision" : 1
                };

            }
        }
于 2013-03-05T18:18:06.963 回答
0

你确定你没有覆盖 renderer.context 因为否则你将不得不显示一些代码,因为我现在还没有得到任何线索?

于 2013-01-03T19:31:36.857 回答