- Home /
Question by
KirieZ · Jul 09, 2013 at 02:26 PM ·
texturemeshuv mapping
Get texture with UV Mesh Mapping
Hello all, I'm trying to get parts of a texture (I think this is called tileset), after reading some answers (mainly: how do uv work, how to best implement a tileset and breaking a big Texture2d into smallers) I get the following code:
public Material mat;
void Start()
{
Mesh mesh = new Mesh();
float u = (float) 0.8; // up
float d = (float) 0.6; // down
float l = (float) 0.8; // left
float r = (float) 1; // right
Vector3[] vertices = new Vector3[4];
vertices[0] = new Vector3(l,u,0); vertices[1] = new Vector3(r,u,0);
vertices[2] = new Vector3(l,d,0); vertices[3] = new Vector3(r,d,0);
mesh.vertices = vertices;
int[] triangles = new int[6]{0,1,2,3,2,1};
mesh.triangles = triangles;
Vector2[] uvs = new Vector2[4];
uvs[0] = new Vector2(l,u); uvs[1] = new Vector2(r,u);
uvs[2] = new Vector2(l,d); uvs[3] = new Vector2(r,d);
mesh.uv = uvs;
mesh.RecalculateNormals();
GetComponent<MeshFilter>().mesh = mesh;
GetComponent<MeshRenderer>().material = mat;
}
Using it I can get only the image that I want on the mesh, but my questions is:
How can I get this texture and use it in other places, like a GUI label or other material?
I hope my question is clear, thanks in advance and sorry my bad english.
Comment