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

Fixed `Projector::projectObjects`.

上级 3b54cf79
此差异已折叠。
此差异已折叠。
此差异已折叠。
......@@ -12,7 +12,6 @@ THREE.Projector = function() {
_line, _lineCount, _linePool = [],
_particle, _particleCount, _particlePool = [],
_vector3 = new THREE.Vector3(),
_vector4 = new THREE.Vector4(),
_projScreenMatrix = new THREE.Matrix4(),
_projScreenObjectMatrix = new THREE.Matrix4(),
......@@ -24,11 +23,13 @@ THREE.Projector = function() {
this.projectObjects = function ( scene, camera ) {
var o, ol, v, vl, f, fl, n, nl, objects, object;
var o, ol, objects, object;
_renderList = [];
_objectCount = 0;
_projScreenMatrix.multiply( camera.projectionMatrix, camera.matrix );
objects = scene.objects;
for ( o = 0, ol = objects.length; o < ol; o++ ) {
......@@ -41,10 +42,10 @@ THREE.Projector = function() {
_vector4.copy( object.position );
_projScreenMatrix.multiplyVector4( _vector4 );
_vector4.multiplyScalar( 1 / _vector4.w );
// _vector4.multiplyScalar( 1 / _vector4.w );
_object.object = object;
_object.z = _vector3.z;
_object.z = _vector4.z;
_renderList.push( _object );
......
......@@ -73,6 +73,16 @@ THREE.WebGLRenderer2 = function () {
_viewMatrixArray.set( camera.matrix.flatten() );
_projectionMatrixArray.set( camera.projectionMatrix.flatten() );
/*
for ( o = 0, ol = scene.objects.length; o < ol; o++ ) {
object = scene.objects[ o ];
renderObject( object );
}
*/
_renderList = _projector.projectObjects( scene, camera );
for ( o = 0, ol = _renderList.length; o < ol; o++ ) {
......@@ -83,6 +93,7 @@ THREE.WebGLRenderer2 = function () {
}
function renderObject( object ) {
var geometry, material, m, nl,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册