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

WebGLRenderer: Passing scene to onBeforeRender/onAfterRender. See #9738.

上级 d04da47b
......@@ -1134,8 +1134,6 @@ function WebGLRenderer( parameters ) {
}
var fog = scene.fog;
// reset caching for this frame
_currentGeometryProgram = '';
......@@ -1256,19 +1254,19 @@ function WebGLRenderer( parameters ) {
var overrideMaterial = scene.overrideMaterial;
renderObjects( opaqueObjects, camera, fog, overrideMaterial );
renderObjects( transparentObjects, camera, fog, overrideMaterial );
renderObjects( opaqueObjects, scene, camera, overrideMaterial );
renderObjects( transparentObjects, scene, camera, overrideMaterial );
} else {
// opaque pass (front-to-back order)
state.setBlending( NoBlending );
renderObjects( opaqueObjects, camera, fog );
renderObjects( opaqueObjects, scene, camera );
// transparent pass (back-to-front order)
renderObjects( transparentObjects, camera, fog );
renderObjects( transparentObjects, scene, camera );
}
......@@ -1495,7 +1493,7 @@ function WebGLRenderer( parameters ) {
}
function renderObjects( renderList, camera, fog, overrideMaterial ) {
function renderObjects( renderList, scene, camera, overrideMaterial ) {
for ( var i = 0, l = renderList.length; i < l; i ++ ) {
......@@ -1509,13 +1507,13 @@ function WebGLRenderer( parameters ) {
object.modelViewMatrix.multiplyMatrices( camera.matrixWorldInverse, object.matrixWorld );
object.normalMatrix.getNormalMatrix( object.modelViewMatrix );
object.onBeforeRender( _this, camera, geometry, material, group );
object.onBeforeRender( _this, scene, camera, geometry, material, group );
if ( object.isImmediateRenderObject ) {
setMaterial( material );
var program = setProgram( camera, fog, material, object );
var program = setProgram( camera, scene.fog, material, object );
_currentGeometryProgram = '';
......@@ -1527,11 +1525,11 @@ function WebGLRenderer( parameters ) {
} else {
_this.renderBufferDirect( camera, fog, geometry, material, object, group );
_this.renderBufferDirect( camera, scene.fog, geometry, material, object, group );
}
object.onAfterRender( _this, camera, geometry, material, group );
object.onAfterRender( _this, scene, camera, geometry, material, group );
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册