|
@@ -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 );
|
|
_canvas.addEventListener( 'webglcontextlost', onContextLost, false );
|
|
|
|
|
|
} catch ( error ) {
|
|
} 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 capabilities = new THREE.WebGLCapabilities( _gl, extensions, parameters );
|
|
|
|
|
|
var state = new THREE.WebGLState( _gl, extensions, paramThreeToGL );
|
|
var state = new THREE.WebGLState( _gl, extensions, paramThreeToGL );
|