diff --git a/src/renderers/WebGLRenderer.js b/src/renderers/WebGLRenderer.js index cdaba7d585f9ec1f869d7725220864c07aea763f..a5b3fc02bf668133c5d93e76557a8c254b0177d4 100644 --- a/src/renderers/WebGLRenderer.js +++ b/src/renderers/WebGLRenderer.js @@ -198,6 +198,18 @@ THREE.WebGLRenderer = function ( parameters ) { } + // Some experimental-webgl implementations do not have getShaderPrecisionFormat + + if ( _gl.getShaderPrecisionFormat === undefined ) { + + _gl.getShaderPrecisionFormat = function () { + + return { 'rangeMin': 1, 'rangeMax': 1, 'precision': 1 }; + + }; + + } + _canvas.addEventListener( 'webglcontextlost', onContextLost, false ); } catch ( error ) { @@ -221,20 +233,6 @@ THREE.WebGLRenderer = function ( parameters ) { } - if ( _gl.getShaderPrecisionFormat === undefined ) { - - _gl.getShaderPrecisionFormat = function () { - - return { - 'rangeMin': 1, - 'rangeMax': 1, - 'precision': 1 - }; - - } - - } - var capabilities = new THREE.WebGLCapabilities( _gl, extensions, parameters ); var state = new THREE.WebGLState( _gl, extensions, paramThreeToGL );