Skip to content

Commit 6babc5a

Browse files
authored
Why we use primitive plane for roads.. it has a lot of polygons..... and roads don't have material in resource folder.. I will try to add road material
1 parent a448329 commit 6babc5a

File tree

1 file changed

+33
-3
lines changed

1 file changed

+33
-3
lines changed

Assets/Models/RoadPolygon.cs

Lines changed: 33 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using System;
1+
using System;
22
using System.Collections.Generic;
33
using System.Linq;
44
using System.Text;
@@ -32,8 +32,10 @@ public void Initialize(string id, Tile tile, List<Vector3> verts, string halfWid
3232
_verts = verts;
3333
for (int i = 1; i < _verts.Count; i++)
3434
{
35-
GameObject roadPlane = GameObject.CreatePrimitive(PrimitiveType.Plane);
36-
roadPlane.GetComponent<MeshCollider>().enabled = false;
35+
36+
GameObject roadPlane = CreateMesh(5);
37+
roadPlane.GetComponent<Renderer>().material = Resources.Load("roadMaterial") as Material;
38+
3739
roadPlane.transform.position = tile.transform.position + ((verts[i] + verts[i-1]) / 2);
3840
Vector3 scale = roadPlane.transform.localScale;
3941
scale.z = Vector3.Distance(verts[i], verts[i-1]) / 10;
@@ -42,6 +44,34 @@ public void Initialize(string id, Tile tile, List<Vector3> verts, string halfWid
4244
roadPlane.transform.parent = tile.transform;
4345
}
4446
}
47+
48+
private GameObject CreateMesh(float size)
49+
{
50+
Mesh m = new Mesh();
51+
52+
m.vertices = new Vector3[] {
53+
new Vector3(-size,0, size),
54+
new Vector3(size, 0, size),
55+
new Vector3(size, 0, -size),
56+
new Vector3(-size, 0, -size)
57+
};
58+
59+
m.uv = new Vector2[] {
60+
new Vector2 (0, 0),
61+
new Vector2 (0, 1),
62+
new Vector2(1, 1),
63+
new Vector2 (1, 0)
64+
};
65+
m.triangles = new int[] { 0, 1, 2, 0, 2, 3};
66+
m.RecalculateNormals();
67+
68+
GameObject scriptedPlane = new GameObject ();
69+
scriptedPlane.AddComponent<MeshRenderer>();
70+
MeshFilter meshas = scriptedPlane.AddComponent<MeshFilter>();
71+
meshas.mesh =m;
72+
73+
return scriptedPlane;
74+
}
4575

4676
private void Update()
4777
{

0 commit comments

Comments
 (0)