どうやら、頂点数、Triangleが限度数を超えているらしく、エラーを吐き出します
特定の数の頂点を持ったMeshを並べて描画する方法もあるかと思いますが、今回の実装では、それぞれの頂点をつないで、連鎖運動をさせたいので、理想とちがってきてしまいます。。
頂点数に限度がある場合、どのような実装をすればたくさんの頂点を出力できるのでしょうか。
C#
1using UnityEngine; 2using System.Collections; 3 4[RequireComponent(typeof(MeshRenderer))] 5[RequireComponent(typeof(MeshFilter))] 6 7public class NewBehaviourScript : MonoBehaviour { 8 9 private void Start(){ 10 Mesh mesh = new Mesh (); 11 mesh.vertices = vecs (); 12 13 mesh.triangles =ints(); 14 15 var filter = GetComponent<MeshFilter> (); 16 filter.sharedMesh = mesh; 17 18 } 19 20 private Vector3[] vecs(){ 21 22 Vector3[] vec= new Vector3[1000]; 23 int x = 0; int y = 0; 24 25 for (int i = 0; i < 1000; i++) { 26 if (i % 100 == 0) { 27 y += 10; 28 x = 0; } 29 vec[i] = new Vector3 (x, y,0); 30 x+=10; 31 } 32 return vec; 33 34 } 35 36 private int[] ints(){ 37 int[] _ints = new int[((99 * 99) * 2)*6]; 38 int Id = 0; 39 40 for (int i = 0; i < 1000; i++) { 41 //if (i % 100 == 0 &&i!=0) { 42 // i += 100; 43 // } 44 _ints[Id] = i; 45 Id += 1; 46 _ints [Id] = i + 1; 47 Id += 1; 48 _ints[Id]=i+100; 49 Id += 1; 50 _ints[Id]=i+1; 51 Id += 1; 52 _ints[Id]=i+100; 53 Id += 1; 54 _ints[Id]=i+101; 55 Id += 1; 56 } 57 58 59 return _ints ; 60 } 61 62 63}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。