Skip to content

Instantly share code, notes, and snippets.

@nakamura001
Created November 30, 2013 22:59
Show Gist options
  • Save nakamura001/7725716 to your computer and use it in GitHub Desktop.
Save nakamura001/7725716 to your computer and use it in GitHub Desktop.
Unityで毎フレームmeshを生成するサンプル
using UnityEngine;
using System.Collections;
public class Test : MonoBehaviour {
private Mesh mesh;
public Material aMaterial;
private Vector3[] newVertices;
private Vector3[] newNormals;
private Vector2[] newUV;
private int[] newTriangles;
void Start() {
}
void Update() {
if (mesh) {
Destroy(mesh);
}
mesh = new Mesh();
GetComponent<MeshFilter>().mesh = mesh;
newVertices = new Vector3[3];
newVertices[0] = new Vector3(-1, 1, 0);
newVertices[1] = new Vector3(1, 1, 0);
newVertices[2] = new Vector3(-1, -1, 0);
mesh.vertices = newVertices;
newNormals = new Vector3[3];
newNormals[0] = new Vector3(0, 0, 1);
newNormals[1] = new Vector3(0, 0, 1);
newNormals[2] = new Vector3(0, 0, 1);
mesh.normals = newNormals;
newUV = new Vector2[3];
newUV[0] = new Vector2(0, 1);
newUV[1] = new Vector2(1, 1);
newUV[0] = new Vector2(1, 0);
mesh.uv = newUV;
newTriangles = new int[3];
newTriangles[0] = 0;
newTriangles[1] = 1;
newTriangles[2] = 2;
mesh.triangles = newTriangles;
Graphics.DrawMesh(mesh, Vector3.zero, Quaternion.identity, aMaterial, 0);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment