|
Hello everyone, Im just trying to procedurally generate meshes and got some problems just at the beginning. I just want to create a cube, but to look if i understand everything correct I wanted to test a plane. So I wrote that code: But I dont see anything , doesnt matter how and where i move the camera (so maybe if just one side of the plane is visible), but no, there is no mesh on the screen. So any idea what I did wrong? Thanks in advance.
(comments are locked)
|
|
There are several errors:
function Start () {
var block : GameObject = new GameObject("Block");
var mesh : Mesh = new Mesh ();
// save a reference to the MeshFilter (you will need it):
var meshFilter = block.AddComponent(MeshFilter);
block.AddComponent(MeshRenderer);
var vertices = new Vector3[4]; // allocate the arrays with new!
var triangles = new int[6];
vertices[0] = Vector3(0,0,0); // I changed the vertices order to clockwise just
vertices[1] = Vector3(0,0,1); // to help understanding the winding order (the
vertices[2] = Vector3(1,0,1); // triangles winding order is what really matters)
vertices[3] = Vector3(1,0,0);
triangles = [0,1,2,0,2,3]; // the triangles now are in clockwise order!
mesh.vertices = vertices; // assign mesh.vertices and mesh.triangles...
mesh.triangles = triangles; // prior to use them in the uv calculation!
var uvs = new Vector2[mesh.vertices.length];
for (var i=0; i < uvs.Length; i++) {
uvs[i] = Vector2(mesh.vertices[i].x, mesh.vertices[i].z);
}
mesh.uv = uvs; // assign the new uv coordinates...
meshFilter.mesh = mesh; // and assign the mesh to MeshFilter.mesh
}
Thanks, helped me alot! Cube is done :)
Feb 22 '12 at 09:38 PM
Ebil
(comments are locked)
|
