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

Updated builds.

上级 f9019fdb
......@@ -20235,7 +20235,6 @@ THREE.WebGLRenderer = function ( parameters ) {
// scene graph
this.sortObjects = true;
this.autoUpdateObjects = true;
// physically based shading
......@@ -20618,6 +20617,8 @@ THREE.WebGLRenderer = function ( parameters ) {
_oldDoubleSided = - 1;
_oldFlipSided = - 1;
initObjects( scene );
this.shadowMapPlugin.update( scene, camera );
};
......@@ -23450,9 +23451,7 @@ THREE.WebGLRenderer = function ( parameters ) {
_projScreenMatrix.multiplyMatrices( camera.projectionMatrix, camera.matrixWorldInverse );
_frustum.setFromMatrix( _projScreenMatrix );
// update WebGL objects
if ( this.autoUpdateObjects ) this.initWebGLObjects( scene );
initObjects( scene );
opaqueObjects.length = 0;
transparentObjects.length = 0;
......@@ -23565,52 +23564,54 @@ THREE.WebGLRenderer = function ( parameters ) {
function projectObject(scene, object,camera){
if ( object.visible ) {
if ( object.visible === false ) return;
var webglObjects = scene.__webglObjects[object.id];
var webglObjects = scene.__webglObjects[ object.id ];
if ( webglObjects && (object.frustumCulled === false || _frustum.intersectsObject( object ) === true ) ) {
if (webglObjects && (object.frustumCulled === false || _frustum.intersectsObject( object ) === true) ) {
updateObject( scene, object );
for ( var i = 0, l = webglObjects.length; i < l; i ++ ) {
updateObject(scene, object);
var webglObject = webglObjects[i];
for (var i = 0, l = webglObjects.length; i < l; i++){
var webglObject = webglObjects[i];
unrollBufferMaterial( webglObject );
unrollBufferMaterial( webglObject );
webglObject.render = true;
if ( _sortObjects === true ) {
if ( object.renderDepth !== null ) {
webglObject.z = object.renderDepth;
} else {
_vector3.setFromMatrixPosition( object.matrixWorld );
_vector3.applyProjection( _projScreenMatrix );
webglObject.z = _vector3.z;
webglObject.render = true;
if ( _sortObjects === true ) {
if ( object.renderDepth !== null ) {
webglObject.z = object.renderDepth;
} else {
_vector3.setFromMatrixPosition( object.matrixWorld );
_vector3.applyProjection( _projScreenMatrix );
webglObject.z = _vector3.z;
}
}
}
}
for(var i = 0, l = object.children.length; i < l; i++) {
projectObject(scene, object.children[i],camera);
}
}
for ( var i = 0, l = object.children.length; i < l; i ++ ) {
projectObject( scene, object.children[ i ], camera );
}
}
function renderPlugins( plugins, scene, camera ) {
if ( ! plugins.length ) return;
if ( plugins.length === 0 ) return;
for ( var i = 0, il = plugins.length; i < il; i ++ ) {
......@@ -23823,7 +23824,7 @@ THREE.WebGLRenderer = function ( parameters ) {
// Objects refresh
this.initWebGLObjects = function ( scene ) {
var initObjects = function ( scene ) {
if ( ! scene.__webglObjects ) {
......@@ -23955,15 +23956,15 @@ THREE.WebGLRenderer = function ( parameters ) {
};
function initGeometryGroups(scene,object,geometry) {
function initGeometryGroups( scene, object, geometry ) {
var g, geometryGroup, material,addBuffers = false;
material = object.material;
if ( geometry.geometryGroups === undefined ) {
delete scene.__webglObjects[object.id];
geometry.makeGroups( material instanceof THREE.MeshFaceMaterial, _glExtensionElementIndexUint ? 4294967296 : 65535 );
delete scene.__webglObjects[ object.id ];
geometry.makeGroups( material instanceof THREE.MeshFaceMaterial, _glExtensionElementIndexUint ? 4294967296 : 65535 );
}
......@@ -24001,10 +24002,13 @@ THREE.WebGLRenderer = function ( parameters ) {
}
}
object.__webglActive = true;
}
function addBuffer( objlist, buffer, object ) {
var id = object.id;
objlist[id] = objlist[id] || [];
objlist[id].push(
......
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册