Hi All I'm trying to make a grid of triangles to produce a plane that can be broken apart for an Augmented reality project. Each triangle needs to be double sided, but setting bothsides to true results in 2 triangles. One is the proper triangle in the correct place with the UV mapping. The other has all the default properties - 0, 0, 0, random ColorMaterial, 100 * 100 etc etc. Have a look at this image to see what I mean
http://augmatic.co.uk/store/triangles.png It's not finished yet but here is the method: private function buildTriangleGrid():void { _triangles = new Vector.<Triangle>(); var camelBmd:Camels = new Camels(0, 0); var camelMat:BitmapMaterial = new BitmapMaterial(camelBmd); var gridWidth:int = _segW * _triangleSize; var griHeight:int = _segH * _triangleSize; var a:Vertex; var b:Vertex; var c:Vertex; var d:Vertex; var uva:UV; var uvb:UV; var uvc:UV; var uvd:UV; var i:int; var j:int; for (i = _segH; i > 0; i--) { for (j = 0; j < _segW * 2; j++) { var triangle:Triangle = new Triangle(); triangle.bothsides = true; if (j % 2 == 0) { /* 0 __ 1 \ | \ | \ | \2 */ var halfJ:int = j * 0.5; triangle.vertices[0] = new Vertex(halfJ * _triangleSize - (gridWidth * 0.5), i * _triangleSize, 0); triangle.vertices[1] = new Vertex((halfJ + 1) * _triangleSize - (gridWidth * 0.5), i * _triangleSize, 0); triangle.vertices[2] = new Vertex((halfJ + 1) * _triangleSize - (gridWidth * 0.5), (i - 1) * _triangleSize, 0); a = triangle.vertices[0]; b = triangle.vertices[1]; c = triangle.vertices[2]; d = new Vertex(0, (i - 1) * _triangleSize, 0); uva = new UV(0, 1); uvb = new UV(1, 1); uvc = new UV(1, 0); uvd = new UV(0, 0); } else { /* 0 | \ | \ | \ 1 ____2 */ } triangle.addFace(new Face(a, b, c, camelMat, uva, uvb, uvc)); _triangles.push(triangle); addChild(triangle); } } } Hope someone can help Cheers Jim
