提交 afeb0db8 编写于 作者: M Mr.doob

WebGLRenderer: Removed material.__webglShader

上级 fc70f27d
......@@ -1547,7 +1547,7 @@ function WebGLRenderer( parameters ) {
var shader = ShaderLib[ parameters.shaderID ];
materialProperties.__webglShader = {
materialProperties.shader = {
name: material.type,
uniforms: UniformsUtils.clone( shader.uniforms ),
vertexShader: shader.vertexShader,
......@@ -1556,7 +1556,7 @@ function WebGLRenderer( parameters ) {
} else {
materialProperties.__webglShader = {
materialProperties.shader = {
name: material.type,
uniforms: material.uniforms,
vertexShader: material.vertexShader,
......@@ -1565,11 +1565,9 @@ function WebGLRenderer( parameters ) {
}
material.onBeforeCompile( materialProperties.__webglShader );
material.onBeforeCompile( materialProperties.shader );
material.__webglShader = materialProperties.__webglShader; // TODO: Remove?
program = programCache.acquireProgram( material, parameters, code );
program = programCache.acquireProgram( material, materialProperties.shader, parameters, code );
materialProperties.program = program;
material.program = program;
......@@ -1610,7 +1608,7 @@ function WebGLRenderer( parameters ) {
}
var uniforms = materialProperties.__webglShader.uniforms;
var uniforms = materialProperties.shader.uniforms;
if ( ! material.isShaderMaterial &&
! material.isRawShaderMaterial ||
......@@ -1719,7 +1717,7 @@ function WebGLRenderer( parameters ) {
var program = materialProperties.program,
p_uniforms = program.getUniforms(),
m_uniforms = materialProperties.__webglShader.uniforms;
m_uniforms = materialProperties.shader.uniforms;
if ( program.id !== _currentProgram ) {
......
......@@ -194,15 +194,15 @@ function unrollLoops( string ) {
}
function WebGLProgram( renderer, code, material, parameters ) {
function WebGLProgram( renderer, code, material, shader, parameters ) {
var gl = renderer.context;
var extensions = material.extensions;
var defines = material.defines;
var vertexShader = material.__webglShader.vertexShader;
var fragmentShader = material.__webglShader.fragmentShader;
var vertexShader = shader.vertexShader;
var fragmentShader = shader.fragmentShader;
var shadowMapTypeDefine = 'SHADOWMAP_TYPE_BASIC';
......@@ -314,7 +314,7 @@ function WebGLProgram( renderer, code, material, parameters ) {
'precision ' + parameters.precision + ' float;',
'precision ' + parameters.precision + ' int;',
'#define SHADER_NAME ' + material.__webglShader.name,
'#define SHADER_NAME ' + shader.name,
customDefines,
......@@ -421,7 +421,7 @@ function WebGLProgram( renderer, code, material, parameters ) {
'precision ' + parameters.precision + ' float;',
'precision ' + parameters.precision + ' int;',
'#define SHADER_NAME ' + material.__webglShader.name,
'#define SHADER_NAME ' + shader.name,
customDefines,
......
......@@ -247,7 +247,7 @@ function WebGLPrograms( renderer, capabilities ) {
};
this.acquireProgram = function ( material, parameters, code ) {
this.acquireProgram = function ( material, shader, parameters, code ) {
var program;
......@@ -269,7 +269,7 @@ function WebGLPrograms( renderer, capabilities ) {
if ( program === undefined ) {
program = new WebGLProgram( renderer, code, material, parameters );
program = new WebGLProgram( renderer, code, material, shader, parameters );
programs.push( program );
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册