From cc38750d18436bc6751399eebf486199c67e8c2c Mon Sep 17 00:00:00 2001 From: "Mr.doob" Date: Mon, 21 Mar 2011 01:55:44 +0000 Subject: [PATCH] Yet more uvs tweaks. --- examples/misc_ubiquity_test.html | 14 +------------- src/extras/geometries/Sphere.js | 2 +- src/renderers/CanvasRenderer.js | 7 ++++--- src/renderers/Projector.js | 13 ++++++++----- src/renderers/renderables/RenderableFace3.js | 2 +- 5 files changed, 15 insertions(+), 23 deletions(-) diff --git a/examples/misc_ubiquity_test.html b/examples/misc_ubiquity_test.html index ec136559..86fca7b8 100644 --- a/examples/misc_ubiquity_test.html +++ b/examples/misc_ubiquity_test.html @@ -52,7 +52,7 @@ - + @@ -205,18 +205,6 @@ mesh.scale.x = mesh.scale.y = mesh.scale.z = 2; scene.addObject( mesh ); - // PARTICLES - - for ( var i = 0; i < 100; i ++ ) { - - particle = new THREE.Particle( new THREE.ParticleCircleMaterial( { color: Math.random() * 0xffffff } ) ); - particle.position.x = Math.random() * 1000 - 500; - particle.position.y = Math.random() * 1000 - 500; - particle.position.z = Math.random() * 1000 - 500; - particle.scale.x = particle.scale.y = 10; - scene.addObject( particle ); - - } // LIGHTS diff --git a/src/extras/geometries/Sphere.js b/src/extras/geometries/Sphere.js index 354cf4eb..cf25cb04 100644 --- a/src/extras/geometries/Sphere.js +++ b/src/extras/geometries/Sphere.js @@ -6,7 +6,7 @@ var Sphere = function ( radius, segmentsWidth, segmentsHeight ) { THREE.Geometry.call( this ); - + var gridX = segmentsWidth || 8, gridY = segmentsHeight || 6; diff --git a/src/renderers/CanvasRenderer.js b/src/renderers/CanvasRenderer.js index db658d6b..54aa7b31 100644 --- a/src/renderers/CanvasRenderer.js +++ b/src/renderers/CanvasRenderer.js @@ -31,7 +31,7 @@ THREE.CanvasRenderer = function () { _near, _far, - _bitmap, + _bitmap, _uvs, _uv1x, _uv1y, _uv2x, _uv2y, _uv3x, _uv3y, _clipRect = new THREE.Rectangle(), @@ -504,11 +504,12 @@ THREE.CanvasRenderer = function () { if ( material instanceof THREE.MeshBasicMaterial ) { - if ( material.map/* && !material.wireframe*/ ) { + if ( material.map/* && !material.wireframe*/ ) { if ( material.map.mapping instanceof THREE.UVMapping ) { - texturePath( _v1x, _v1y, _v2x, _v2y, _v3x, _v3y, material.map.image, element.uvs[ 0 ].u, element.uvs[ 0 ].v, element.uvs[ 1 ].u, element.uvs[ 1 ].v, element.uvs[ 2 ].u, element.uvs[ 2 ].v ); + _uvs = element.uvs[ 0 ]; + texturePath( _v1x, _v1y, _v2x, _v2y, _v3x, _v3y, material.map.image, _uvs[ 0 ].u, _uvs[ 0 ].v, _uvs[ 1 ].u, _uvs[ 1 ].v, _uvs[ 2 ].u, _uvs[ 2 ].v ); } diff --git a/src/renderers/Projector.js b/src/renderers/Projector.js index 657fffbf..78542aab 100644 --- a/src/renderers/Projector.js +++ b/src/renderers/Projector.js @@ -198,12 +198,15 @@ THREE.Projector = function() { for ( u = 0, ul = faceVertexUvs.length; u < ul; u ++ ) { - uvs = faceVertexUvs[ u ]; + uvs = faceVertexUvs[ u ][ f ]; - _face3.uvs[ u ] = []; - _face3.uvs[ u ][ 0 ] = uvs[ 0 ]; - _face3.uvs[ u ][ 1 ] = uvs[ 1 ]; - _face3.uvs[ u ][ 2 ] = uvs[ 2 ]; + if ( uvs ) { + + _face3.uvs[ u ][ 0 ] = uvs[ 0 ]; + _face3.uvs[ u ][ 1 ] = uvs[ 1 ]; + _face3.uvs[ u ][ 2 ] = uvs[ 2 ]; + + } } diff --git a/src/renderers/renderables/RenderableFace3.js b/src/renderers/renderables/RenderableFace3.js index dbd519c6..c86eae54 100644 --- a/src/renderers/renderables/RenderableFace3.js +++ b/src/renderers/renderables/RenderableFace3.js @@ -17,7 +17,7 @@ THREE.RenderableFace3 = function () { this.meshMaterials = null; this.faceMaterials = null; this.overdraw = false; - this.uvs = []; + this.uvs = [[]]; this.z = null;