上一篇写了代码创建网格,现在这一篇就是骨骼动画。中间跳过了一些 UV 贴图什么的内容 有空再补上。
主要的工作内容就是
1 网络 ,点和面。
2.UV,贴图。 (代码没有 这一块 就用了个默认的材质)
3 骨骼, 骨骼权重 。
4 骨骼 的 动画曲线。
看起来都是美术的工作对不对 。 程序员就是不要搞美术。
using UnityEngine;
using System.Collections;
public class boneWeig : MonoBehaviour {
public AnimationCurve curve;
public AnimationClip clip;
void Start() {
//boneWeigTest ();
cubeAnimation ();
}
void Update () {
}
GameObject cubeAnimation (){
GameObject a = new GameObject ();
a.AddComponent<Animation>();
a.AddComponent<SkinnedMeshRenderer>();
// 蒙皮网络渲染器
SkinnedMeshRenderer rend = a.GetComponent<SkinnedMeshRenderer>();
Animation anim = a.GetComponent<Animation>();
rend.material = new Material(Shader.Find("Diffuse"));
Mesh mesh = new Mesh();
// 做一个长方体的网格 段数设为5 就是
int leng = 5;
Vector3[] ves = new Vector3[leng * 4];
for (int i=0; i<leng; i++) {
ves[i*4] = new Vector3(1,2*i,-1);
ves[i*4+1]= new Vector3(1,2*i,1);
ves[i*4+2]= new Vector3(-1,2*i,1);
ves[i*4+3]= new Vector3(-1,2