public static void AddPerpendicularQuadsTriangles(this MeshDataBuffer buffer) { buffer.AddTriangle(0, 3, 2); buffer.AddTriangle(2, 1, 0); buffer.AddTriangle(3, 0, 1); buffer.AddTriangle(1, 2, 3); }
public static void AddCubeVertexNZ(this MeshDataBuffer buffer, int x, int y, int z, float lightLB, float lightRB, float lightRT, float lightLT, Block block) { block.GetNegativeZUVForCubeVertex(out Vector2 lb, out Vector2 rb, out Vector2 rt, out Vector2 lt); buffer.AddVertex(new Vector3(x, y, z), Vector3.back, lb, lightLB); buffer.AddVertex(new Vector3(x + 1, y, z), Vector3.back, rb, lightRB); buffer.AddVertex(new Vector3(x + 1, y + 1, z), Vector3.back, rt, lightRT); buffer.AddVertex(new Vector3(x, y + 1, z), Vector3.back, lt, lightLT); }
public static void AddPerpendicularQuadsVertexFirst(this MeshDataBuffer buffer, int x, int y, int z, float light, Block block) { block.GetMainUVForPerpendicularQuadsVertex(out Vector2 lb, out Vector2 rb, out Vector2 rt, out Vector2 lt); Vector3 normal = new Vector3(-0.70711f, 0, -0.70711f); buffer.AddVertex(new Vector3(x, y, z + 1), normal, lb, light); buffer.AddVertex(new Vector3(x + 1, y, z), normal, rb, light); buffer.AddVertex(new Vector3(x + 1, y + 1, z), normal, rt, light); buffer.AddVertex(new Vector3(x, y + 1, z + 1), normal, lt, light); }
public static void AddCubeTriangles(this MeshDataBuffer buffer) { buffer.AddTriangle(0, 3, 2); buffer.AddTriangle(2, 1, 0); }