Browse Source

Yet more uvs tweaks.

Mr.doob 14 years ago
parent
commit
cc38750d18

+ 1 - 13
examples/misc_ubiquity_test.html

@@ -52,7 +52,7 @@
 		<script type="text/javascript" src="../src/materials/MeshFaceMaterial.js"></script>
 		<script type="text/javascript" src="../src/materials/MeshShaderMaterial.js"></script>
 		<script type="text/javascript" src="../src/materials/ParticleBasicMaterial.js"></script>
-		<script type="text/javascript" src="../src/materials/ParticleCircleMaterial.js"></script>
+		<script type="text/javascript" src="../src/materials/ParticleCanvasMaterial.js"></script>
 		<script type="text/javascript" src="../src/materials/ParticleDOMMaterial.js"></script>
 		<script type="text/javascript" src="../src/materials/Texture.js"></script>
 		<script type="text/javascript" src="../src/materials/RenderTarget.js"></script>
@@ -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
 

+ 1 - 1
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;
 

+ 4 - 3
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 );
 
 					}
 

+ 8 - 5
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 ];
+
+									}
 
 								}
 

+ 1 - 1
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;