// // // void CreateZSphere(float x, float z) { GameObject obj = CreateChild(x, z); obj.name = "ZSphere"; Mesh mesh = PrimitiveBuilder.BuildSphere(Axis.ZAxis, 0.5f, 24); NodeBuilder.SetMesh(obj, mesh); }
// // // void CreateYCylinder(float x, float z) { GameObject obj = CreateChild(x, z); obj.name = "YCylinder"; Mesh mesh = PrimitiveBuilder.BuildCylinder(Axis.YAxis, 0.5f, 1, 24); NodeBuilder.SetMesh(obj, mesh); }
void CreateCube(float x, float z) { GameObject obj = CreateChild(x, z); obj.name = "Cube"; Mesh mesh = PrimitiveBuilder.BuildCube(1f); NodeBuilder.SetMesh(obj, mesh); }
// ------------------------------------- private GameObject CreateTriangle(float x, float z) { GameObject obj = CreateChild(x, z); MeshBuilder builder = new MeshBuilder(); builder.Cap(PrimitiveBuilder.CreateUnitPolygon(3)); Mesh mesh = builder.Build(); NodeBuilder.SetMesh(obj, mesh); return(obj); }
// // // private GameObject CreateUnitTile(float x, float z) { GameObject obj = CreateChild(x, z); PointList points = PrimitiveBuilder.CreateUnitTile(); MeshBuilder builder = new MeshBuilder(); builder.Cap(points); Mesh mesh = builder.Build(); NodeBuilder.SetMesh(obj, mesh); return(obj); }
private GameObject CreatePentagonUp(float x, float z) { GameObject obj = CreateChild(x, z); MeshBuilder builder = new MeshBuilder(); PointList pointsA = PrimitiveBuilder.CreateUnitPolygon(5); PointList pointsB = pointsA.Translate(new Vector3(0f, 1f, 0f)); builder.Cap(pointsA.Bridge(pointsB, PointList.BridgeMode.CloseReuse)); builder.Cap(pointsB); builder.Cap(pointsA.Reverse()); Mesh mesh = builder.Build(); NodeBuilder.SetMesh(obj, mesh); return(obj); }
void Start() { MeshBuilder builder = new MeshBuilder(); PointList pointsZ = PrimitiveBuilder.CreateUnitTile(); PointList pointsA = pointsZ.Translate(new Vector3(0f, -0.5f, 0f)); PointList pointsB = pointsA.Translate(Vector3.up); List <PointList> list = pointsA.Bridge(pointsB, PointList.BridgeMode.CloseReuse); list.Add(pointsA.Reverse()); list.Add(pointsB); foreach (PointList points in list) { SphereSide(points, builder, 5); } Mesh mesh = builder.Build(); NodeBuilder.SetMesh(gameObject, mesh); }
private GameObject CreateUnitTileUp(float x, float z) { GameObject obj = CreateChild(x, z); PointList pointsA = PrimitiveBuilder.CreateUnitTile(); PointList pointsB = pointsA.Translate(Vector3.up); List <PointList> list = pointsA.Bridge(pointsB, PointList.BridgeMode.CloseReuse); MeshBuilder builder = new MeshBuilder(); builder.Cap(list); builder.Cap(pointsB); builder.Cap(pointsA.Reverse()); Mesh mesh = builder.Build(); NodeBuilder.SetMesh(obj, mesh); return(obj); }
void Start() { PointList pointsA = PrimitiveBuilder.CreateUnitTile(); PointList pointsB = pointsA.Translate(0.2f * Vector3.up); List <PointList> list = pointsB.Divide(3, 3); MeshBuilder builder = new MeshBuilder(); builder.Cap(pointsA.Bridge(pointsB, PointList.BridgeMode.CloseReuse)); foreach (PointList points in list) { DigHole(points, builder); } builder.Cap(pointsA.Reverse()); Mesh mesh = builder.Build(); NodeBuilder.SetMesh(gameObject, mesh); }
private GameObject CreatePentagonHop(float x, float z) { GameObject obj = CreateChild(x, z); MeshBuilder builder = new MeshBuilder(); PointList pointsA = PrimitiveBuilder.CreateUnitPolygon(5); PointList pointsB = pointsA.Translate(new Vector3(0f, 1f, 0f)); List <PointList> list = pointsA.Bridge(pointsB, PointList.BridgeMode.CloseReuse); list.Add(pointsB); list.Add(pointsA.Reverse()); foreach (PointList points in list) { Extend(points, builder); } Mesh mesh = builder.Build(); NodeBuilder.SetMesh(obj, mesh); return(obj); }
void Start() { MeshBuilder builder = new MeshBuilder(); // Create a cube PointList pointsA = PrimitiveBuilder.CreateUnitTile(); PointList pointsB = pointsA.Translate(Vector3.up); List <PointList> list = pointsA.Bridge(pointsB, PointList.BridgeMode.CloseReuse); list.Add(pointsA.Reverse()); list.Add(pointsB); // Call Branch() on each face foreach (PointList points in list) { Branch(points, builder, 5); } Mesh mesh = builder.Build(); NodeBuilder.SetMesh(gameObject, mesh); }