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

Object3D: Removed renderDepth.

上级 a609bc28
......@@ -89,11 +89,6 @@
Use quaternion instead of Euler angles for specifying local rotation.
</div>
<h3>[property:Float renderDepth]</h3>
<div>
Override depth-sorting order if non *null*.
</div>
<h3>[property:Boolean visible]</h3>
<div>
Object gets rendered if *true*.
......
......@@ -126,7 +126,7 @@ THREE.Projector = function () {
_clippedVertex1PositionScreen = new THREE.Vector4(),
_clippedVertex2PositionScreen = new THREE.Vector4();
//
this.projectVector = function ( vector, camera ) {
......@@ -148,7 +148,7 @@ THREE.Projector = function () {
console.error( 'THREE.Projector: .pickingRay() has been removed.' );
};
//
var RenderList = function () {
......@@ -352,17 +352,9 @@ THREE.Projector = function () {
_object.id = object.id;
_object.object = object;
if ( object.renderDepth !== null ) {
_object.z = object.renderDepth;
} else {
_vector3.setFromMatrixPosition( object.matrixWorld );
_vector3.applyProjection( _viewProjectionMatrix );
_object.z = _vector3.z;
}
_vector3.setFromMatrixPosition( object.matrixWorld );
_vector3.applyProjection( _viewProjectionMatrix );
_object.z = _vector3.z;
_renderData.objects.push( _object );
......
......@@ -47,7 +47,7 @@
var controls, renderHelpers = false;
var mouseVector = new THREE.Vector3();
var mouse = new THREE.Vector2();
var decalDiffuse = THREE.ImageUtils.loadTexture( 'textures/decal/decal-diffuse.png' );
var decalNormal = THREE.ImageUtils.loadTexture( 'textures/decal/decal-normal.jpg' );
......@@ -94,11 +94,10 @@
function init() {
renderer = new THREE.WebGLRenderer( { antialias: true });
renderer = new THREE.WebGLRenderer( { antialias: true } );
renderer.setSize( window.innerWidth, window.innerHeight );
container.appendChild( renderer.domElement );
scene = new THREE.Scene();
helperScene = new THREE.Scene();
......@@ -106,7 +105,7 @@
camera.position.z = 100;
camera.target = new THREE.Vector3();
controls = new THREE.OrbitControls( camera, renderer.domElement );
scene.add( camera );
var light = new THREE.HemisphereLight( 0xffddcc, 0x111122 );
......@@ -139,7 +138,7 @@
window.addEventListener( 'mousedown', function () {
moved = false;
}, false );
window.addEventListener( 'mouseup', function() {
......@@ -161,7 +160,7 @@
x = event.clientX;
y = event.clientY;
}
mouse.x = ( x / window.innerWidth ) * 2 - 1;
mouse.y = - ( y / window.innerHeight ) * 2 + 1;
......@@ -172,7 +171,7 @@
function checkIntersection() {
if( !mesh ) return;
mouseVector.set( mouse.x, mouse.y, 1 ).unproject( camera );
raycaster.set( camera.position, mouseVector.sub( camera.position ).normalize() );
......@@ -203,7 +202,7 @@
}
}
var gui = new dat.GUI();
gui.add( params, 'projection', { 'From cam to mesh': 'camera', 'Normal to mesh': 'normal' } );
......@@ -215,7 +214,7 @@
onWindowResize();
render();
}
function loadLeePerrySmith( callback ) {
......@@ -282,12 +281,11 @@
s.set( scale, scale, scale );
if( params.rotate) r.z = Math.random() * 2 * Math.PI;
var material = decalMaterial.clone();
material.color.setHex( Math.random() * 0xffffff );
var m = new THREE.Mesh( new THREE.DecalGeometry( mesh, p, r, s, check ), material );
m.renderDepth = - scene.children.length;
decals.push( m );
scene.add( m );
......@@ -307,24 +305,24 @@
var merge = {};
decals.forEach(function (decal) {
var uuid = decal.material.uuid;
var d = merge[uuid] = merge[uuid] || {};
d.material = d.material || decal.material;
d.geometry = d.geometry || new THREE.Geometry();
d.geometry.merge(decal.geometry, decal.matrix);
});
removeDecals();
for (var key in merge) {
var d = merge[key];
var mesh = new THREE.Mesh(d.geometry, d.material);
scene.add(mesh);
decals.push(mesh);
}
}
......@@ -341,7 +339,7 @@
function render() {
requestAnimationFrame( render );
renderer.autoClear = false;
renderer.render( scene, camera );
if( renderHelpers ) renderer.render( helperScene, camera );
......
......@@ -136,7 +136,6 @@
}
renderer.render( scene, camera );
}
......
......@@ -56,8 +56,6 @@ THREE.Object3D = function () {
},
} );
this.renderDepth = null;
this.rotationAutoUpdate = true;
this.matrix = new THREE.Matrix4();
......@@ -755,8 +753,6 @@ THREE.Object3D.prototype = {
object.quaternion.copy( this.quaternion );
object.scale.copy( this.scale );
object.renderDepth = this.renderDepth;
object.rotationAutoUpdate = this.rotationAutoUpdate;
object.matrix.copy( this.matrix );
......
......@@ -3402,18 +3402,10 @@ THREE.WebGLRenderer = function ( parameters ) {
if ( _this.sortObjects === true ) {
if ( object.renderDepth !== null ) {
_vector3.setFromMatrixPosition( object.matrixWorld );
_vector3.applyProjection( _projScreenMatrix );
webglObject.z = object.renderDepth;
} else {
_vector3.setFromMatrixPosition( object.matrixWorld );
_vector3.applyProjection( _projScreenMatrix );
webglObject.z = _vector3.z;
}
webglObject.z = _vector3.z;
}
......
......@@ -158,16 +158,7 @@ THREE.SpritePlugin = function ( renderer, sprites ) {
var sprite = sprites[ i ];
sprite._modelViewMatrix.multiplyMatrices( camera.matrixWorldInverse, sprite.matrixWorld );
if ( sprite.renderDepth === null ) {
sprite.z = - sprite._modelViewMatrix.elements[ 14 ];
} else {
sprite.z = sprite.renderDepth;
}
sprite.z = - sprite._modelViewMatrix.elements[ 14 ];
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册