Texture not Drawn on all uv Coordinates
I'm creating a 2D Tilemap based on a procedural mesh.
Each Tile has his own Quad and vertices and are positioned next to each other to create a seamless mesh. The mesh is created successfully. But when i try to assign uv coordinates to reference a part on a texture only the first Quad/Tile gets the Texture.
So far i have noticed that when i create the Quads with room between them they do all render the texture. Can anyone give some inside to why this is happening and what a possible fix might be.
 //Code snip
 MeshData meshData = new MeshData();
 for (int x = 0; x < _ChunkSize; x++) {
     for (int y = 0; y < _ChunkSize; y++) {
         meshData.AddQuad(x, y);
     }
 }
 
 Mesh mesh = new Mesh();
 mesh.name = "ChunkMesh";
 mesh.SetVertices(meshData.Vertices);
 mesh.SetNormals(meshData.Normals);
 mesh.SetUVs(0, meshData.Uvs);
 mesh.SetTriangles(meshData.Triangles,0);
 //end
 
 public class MeshData {
     public List<Vector3> Vertices { get; private set; }
     public List<Vector3> Normals { get; private set; }
     public List<int> Triangles { get; private set; }
     public List<Vector2> Uvs { get; private set; }
 
     public MeshData() {
         Vertices = new List<Vector3>();
         Normals = new List<Vector3>();
         Triangles = new List<int>();
         Uvs = new List<Vector2>();
     }
 
     public void AddQuad(int x, int y) {
         //temp
         Vector2 LT = new Vector2(0.5f, 1);
         Vector2 RT = new Vector2(1, 1);
         Vector2 RB = new Vector2(1, 0.5f);
         Vector2 LB = new Vector2(0.5f, 0.5f);
 
         //Seamless
         int a = AddVertex(new Vector3(0 + x, 1 + y, 0), Vector3.forward, LT); //Left Top
         int b = AddVertex(new Vector3(1 + x, 1 + y, 0), Vector3.forward, RT); //Right Top
         int c = AddVertex(new Vector3(0 + x, 0 + y, 0), Vector3.forward, LB); //Left Bottom
         int d = AddVertex(new Vector3(1 + x, 0 + y, 0), Vector3.forward, RB); //Right Bottom
 
         //With space between quads
         //int a = AddVertex(new Vector3(0 + x*2, 1 + y*2, 0), Vector3.forward, LT); //Left Top
         //int b = AddVertex(new Vector3(1 + x*2, 1 + y*2, 0), Vector3.forward, RT); //Right Top
         //int c = AddVertex(new Vector3(0 + x*2, 0 + y*2, 0), Vector3.forward, LB); //Left Bottom
         //int d = AddVertex(new Vector3(1 + x*2, 0 + y*2, 0), Vector3.forward, RB); //Right Bottom
         
         AddTriangle(a, b, d);
         AddTriangle(a, d, c);
     }
 
     private int AddVertex(Vector3 vertex, Vector3 normal, Vector2 uv) {
         Vertices.Add(vertex);
         Normals.Add(normal);
         Uvs.Add(uv);
 
         return Vertices.IndexOf(vertex);
     }
 
     private void AddTriangle(int a, int b, int c) {
         Triangles.Add(a);
         Triangles.Add(b);
         Triangles.Add(c);
     }
 }
Your answer
 
 
             Follow this Question
Related Questions
Can I add the same UV coordinates to multiple vertices? 0 Answers
Assigning uv's to multiple faces 1 Answer
Help setting UV coordinates for code-generated plane 0 Answers
dynamic created mesh with wrong render order 1 Answer
(Custom Mesh) getting a smooth edge between faces that's using different uv cordianates 0 Answers
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                