动画事件添加
var clip = new AnimationClip();//clip,动画剪辑 储存基于动画的关键帧。这里新建动画剪辑
clip.SetCurve ("", typeof(Material), "_Color.a", AnimationCurve.EaseInOut(0, 1, 5, 0));//给动画指定曲线一个特殊的属性。
setCurve方法参数:
param1:relativePath应用给该曲线的游戏物体的路径。relativePath被格式化类似路径,如"root/spine/leftArm"。如果relativePath为空,表示动画剪辑附加的游戏物体。
param2:type该动画组建的类型。
param3:propertyName该动画的属性的名字或路径。
param4:curve动画曲线。
Material材质属性可以使用shader导出的属性名称制作动画。通常使用的名称是: "_MainTex", "_BumpMap", "_Color", "_SpecColor", "_Emission"。如何动画化不同材质属性类型: Float属性: "PropertyName" Vector4 属性: "PropertyName.x", "PropertyName.y", "PropertyName.z", "PropertyName.w" Color 属性: "PropertyName.r", "PropertyName.g", "PropertyName.b", "PropertyName.a" UV 旋转属性:"PropertyName.rotation" UV 偏移和缩放: "PropertyName.offset.x", "PropertyName.offset.y", "PropertyName.scale.x", "PropertyName.scale.y" 对于在同一renderer的多个索引材质,你能想这样添加前缀:"[1]._MainTex.offset.y" |
var event = new AnimationEvent();//定义动画事件
event.time = 5;//事件触发时间
event.functionName = "InstantiateParticle";//事件回调方法
clip.AddEvent(event);//添加此动画时间到动画剪辑中
animation.AddClip(clip, "test");//添加此动画剪辑到物体动画中
animation.Play("test");//播放动画