在制作特效和动画的时候
有些属性是自定义的,比如发光强度,形变程度,这些属性最终要影响该物体的材质属性
有些属性是综合的,都由一个值progress统一控制,用animation来控制要做多次相同动画,改起来也费事
这个时候在animation编辑面板里面unity默认没有提供这些自定义属性控制,又看不到源码,不知道unity是怎么做属性变换通知的
这样的数据变换通知,其方式
1 轮询,update里面每次处理
2 观察者模式
因为找不到通知的方法,也找不到animation面板的接口,就做不出观察者模式
所以,照着轮询的思路做
用一个public变量接受变换,让animation改变这个变量,mono脚本在update根据监视的变量改变其他属性
如果要优化
1 update执行更新的频率降低,比如每3帧执行一次
2 使用协程,自定义更新频率,还能控制停止