2
0
Эх сурвалжийг харах

WebGLRenderer: Removed renderer.extensions calls.

Mr.doob 8 жил өмнө
parent
commit
4615501757

+ 1 - 1
src/renderers/WebGLRenderer.js

@@ -270,7 +270,7 @@ function WebGLRenderer( parameters ) {
 		attributes = new WebGLAttributes( _gl );
 		attributes = new WebGLAttributes( _gl );
 		geometries = new WebGLGeometries( _gl, attributes, _infoMemory );
 		geometries = new WebGLGeometries( _gl, attributes, _infoMemory );
 		objects = new WebGLObjects( _gl, geometries, _infoRender );
 		objects = new WebGLObjects( _gl, geometries, _infoRender );
-		programCache = new WebGLPrograms( _this, capabilities );
+		programCache = new WebGLPrograms( _this, extensions, capabilities );
 		lights = new WebGLLights();
 		lights = new WebGLLights();
 		renderLists = new WebGLRenderLists();
 		renderLists = new WebGLRenderLists();
 
 

+ 8 - 10
src/renderers/webgl/WebGLProgram.js

@@ -194,11 +194,10 @@ function unrollLoops( string ) {
 
 
 }
 }
 
 
-function WebGLProgram( renderer, code, material, shader, parameters ) {
+function WebGLProgram( renderer, extensions, code, material, shader, parameters ) {
 
 
 	var gl = renderer.context;
 	var gl = renderer.context;
 
 
-	var extensions = material.extensions;
 	var defines = material.defines;
 	var defines = material.defines;
 
 
 	var vertexShader = shader.vertexShader;
 	var vertexShader = shader.vertexShader;
@@ -278,7 +277,7 @@ function WebGLProgram( renderer, code, material, shader, parameters ) {
 
 
 	//
 	//
 
 
-	var customExtensions = generateExtensions( extensions, parameters, renderer.extensions );
+	var customExtensions = generateExtensions( material.extensions, parameters, extensions );
 
 
 	var customDefines = generateDefines( defines );
 	var customDefines = generateDefines( defines );
 
 
@@ -359,7 +358,7 @@ function WebGLProgram( renderer, code, material, shader, parameters ) {
 			parameters.sizeAttenuation ? '#define USE_SIZEATTENUATION' : '',
 			parameters.sizeAttenuation ? '#define USE_SIZEATTENUATION' : '',
 
 
 			parameters.logarithmicDepthBuffer ? '#define USE_LOGDEPTHBUF' : '',
 			parameters.logarithmicDepthBuffer ? '#define USE_LOGDEPTHBUF' : '',
-			parameters.logarithmicDepthBuffer && renderer.extensions.get( 'EXT_frag_depth' ) ? '#define USE_LOGDEPTHBUF_EXT' : '',
+			parameters.logarithmicDepthBuffer && extensions.get( 'EXT_frag_depth' ) ? '#define USE_LOGDEPTHBUF_EXT' : '',
 
 
 			'uniform mat4 modelMatrix;',
 			'uniform mat4 modelMatrix;',
 			'uniform mat4 modelViewMatrix;',
 			'uniform mat4 modelViewMatrix;',
@@ -466,9 +465,9 @@ function WebGLProgram( renderer, code, material, shader, parameters ) {
 			parameters.physicallyCorrectLights ? "#define PHYSICALLY_CORRECT_LIGHTS" : '',
 			parameters.physicallyCorrectLights ? "#define PHYSICALLY_CORRECT_LIGHTS" : '',
 
 
 			parameters.logarithmicDepthBuffer ? '#define USE_LOGDEPTHBUF' : '',
 			parameters.logarithmicDepthBuffer ? '#define USE_LOGDEPTHBUF' : '',
-			parameters.logarithmicDepthBuffer && renderer.extensions.get( 'EXT_frag_depth' ) ? '#define USE_LOGDEPTHBUF_EXT' : '',
+			parameters.logarithmicDepthBuffer && extensions.get( 'EXT_frag_depth' ) ? '#define USE_LOGDEPTHBUF_EXT' : '',
 
 
-			parameters.envMap && renderer.extensions.get( 'EXT_shader_texture_lod' ) ? '#define TEXTURE_LOD_EXT' : '',
+			parameters.envMap && extensions.get( 'EXT_shader_texture_lod' ) ? '#define TEXTURE_LOD_EXT' : '',
 
 
 			'uniform mat4 viewMatrix;',
 			'uniform mat4 viewMatrix;',
 			'uniform vec3 cameraPosition;',
 			'uniform vec3 cameraPosition;',
@@ -595,12 +594,11 @@ function WebGLProgram( renderer, code, material, shader, parameters ) {
 
 
 	var cachedUniforms;
 	var cachedUniforms;
 
 
-	this.getUniforms = function() {
+	this.getUniforms = function () {
 
 
 		if ( cachedUniforms === undefined ) {
 		if ( cachedUniforms === undefined ) {
 
 
-			cachedUniforms =
-				new WebGLUniforms( gl, program, renderer );
+			cachedUniforms = new WebGLUniforms( gl, program, renderer );
 
 
 		}
 		}
 
 
@@ -612,7 +610,7 @@ function WebGLProgram( renderer, code, material, shader, parameters ) {
 
 
 	var cachedAttributes;
 	var cachedAttributes;
 
 
-	this.getAttributes = function() {
+	this.getAttributes = function () {
 
 
 		if ( cachedAttributes === undefined ) {
 		if ( cachedAttributes === undefined ) {
 
 

+ 2 - 2
src/renderers/webgl/WebGLPrograms.js

@@ -5,7 +5,7 @@
 import { BackSide, DoubleSide, CubeUVRefractionMapping, CubeUVReflectionMapping, GammaEncoding, LinearEncoding } from '../../constants';
 import { BackSide, DoubleSide, CubeUVRefractionMapping, CubeUVReflectionMapping, GammaEncoding, LinearEncoding } from '../../constants';
 import { WebGLProgram } from './WebGLProgram';
 import { WebGLProgram } from './WebGLProgram';
 
 
-function WebGLPrograms( renderer, capabilities ) {
+function WebGLPrograms( renderer, extensions, capabilities ) {
 
 
 	var programs = [];
 	var programs = [];
 
 
@@ -269,7 +269,7 @@ function WebGLPrograms( renderer, capabilities ) {
 
 
 		if ( program === undefined ) {
 		if ( program === undefined ) {
 
 
-			program = new WebGLProgram( renderer, code, material, shader, parameters );
+			program = new WebGLProgram( renderer, extensions, code, material, shader, parameters );
 			programs.push( program );
 			programs.push( program );
 
 
 		}
 		}