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

WebGLRenderer: Pass __webglShader to onBeforeCompile()

上级 e3e90dd5
...@@ -66,7 +66,7 @@ ...@@ -66,7 +66,7 @@
var camera, scene, renderer; var camera, scene, renderer;
var mesh; var mesh, materialShader;
var mouseX = 0; var mouseX = 0;
var mouseY = 0; var mouseY = 0;
...@@ -91,11 +91,9 @@ ...@@ -91,11 +91,9 @@
scene = new THREE.Scene(); scene = new THREE.Scene();
var material = new THREE.MeshNormalMaterial(); var material = new THREE.MeshNormalMaterial();
material.onBeforeCompile = function () { material.onBeforeCompile = function ( shader ) {
var shader = this.__webglShader; // console.log( shader )
// console.log( shader );
shader.uniforms.time = { value: 0 }; shader.uniforms.time = { value: 0 };
...@@ -105,6 +103,8 @@ ...@@ -105,6 +103,8 @@
'vec3 transformed = vec3( position.x + sin( time + position.y ) / 2.0, position.y, position.z );' 'vec3 transformed = vec3( position.x + sin( time + position.y ) / 2.0, position.y, position.z );'
); );
materialShader = shader;
}; };
loader = new THREE.JSONLoader(); loader = new THREE.JSONLoader();
...@@ -177,11 +177,11 @@ ...@@ -177,11 +177,11 @@
mesh.rotation.y += 0.05 * ( targetX - mesh.rotation.y ); mesh.rotation.y += 0.05 * ( targetX - mesh.rotation.y );
mesh.rotation.x += 0.05 * ( targetY - mesh.rotation.x ); mesh.rotation.x += 0.05 * ( targetY - mesh.rotation.x );
if ( mesh.material.__webglShader ) { }
mesh.material.__webglShader.uniforms.time.value = performance.now() / 1000; if ( materialShader ) {
} materialShader.uniforms.time.value = performance.now() / 1000;
} }
......
...@@ -1565,9 +1565,9 @@ function WebGLRenderer( parameters ) { ...@@ -1565,9 +1565,9 @@ function WebGLRenderer( parameters ) {
} }
material.__webglShader = materialProperties.__webglShader; material.onBeforeCompile( materialProperties.__webglShader );
material.onBeforeCompile(); material.__webglShader = materialProperties.__webglShader; // TODO: Remove?
program = programCache.acquireProgram( material, parameters, code ); program = programCache.acquireProgram( material, parameters, code );
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册