80 GameObject obj=
new GameObject(
"Clip");
82 obj.AddComponent<SkinnedMeshRenderer>();
84 SkinnedMeshRenderer renderer_= obj.GetComponent<SkinnedMeshRenderer>();
88 Mesh _mesh=
new Mesh();
90 _mesh.vertices =
new Vector3[] {
new Vector3(20f, -20f, 0),
new Vector3(-20f, -20f, 0),
new Vector3(20f, 20f, 0),
new Vector3(-20f, 20f, 0)};
93 _mesh.uv =
new Vector2[] {
new Vector2(0, 0),
new Vector2(1, 0),
new Vector2(0, 1),
new Vector2(1, 1)};
95 _mesh.triangles =
new int[] {0, 1, 2, 1, 3, 2};
97 _mesh.RecalculateNormals();
99 renderer_.material =
new Material (Shader.Find(
" Diffuse"));
107 BoneWeight[] weights=
new BoneWeight[4];
111 weights[0].boneIndex0 = 0;
113 weights[0].weight0 = 1;
117 weights[1].boneIndex0 = 0;
119 weights[1].weight0 = 1;
123 weights[2].boneIndex0 = 1;
125 weights[2].weight0 = 1;
129 weights[3].boneIndex0 = 1;
131 weights[3].weight0 = 1;
135 _mesh.boneWeights = weights;
141 Transform[] bones=
new Transform[2];
143 Matrix4x4[] bindPoses=
new Matrix4x4[2];
147 bones[0] =
new GameObject (
"Lower").transform;
149 bones[0].parent = obj.transform;
153 bones[0].localRotation = Quaternion.identity;
156 bones[0].localPosition =
new Vector3 (0, -10f, 0);
164 bindPoses[0] = bones[0].worldToLocalMatrix * obj.transform.localToWorldMatrix;
166 bones[1] =
new GameObject (
"Upper").transform;
168 bones[1].parent = obj.transform;
172 bones[1].localRotation = Quaternion.identity;
175 bones[1].localPosition =
new Vector3 (0, 10f, 0);
182 bindPoses[1] = bones[1].worldToLocalMatrix * obj.transform.localToWorldMatrix;
186 _mesh.bindposes = bindPoses;
190 renderer_.bones = bones;
192 renderer_.sharedMesh = _mesh;
static GameObject CreateClip()