学习动画,看了 osganimationskinning 这个例子,感觉 OSG 的动画实现的太灵活了.
一个简单的模型节点变换动画过程如下:
1.定义一些变换位置
2.定义动画关键帧,包含了时间,位置,旋转等数据,这里可以设置受变化作用的节点
3.给节点设置一个动画管理器,这个动画管理器是继承自 Osg::NodeCallback,所以其实是
个 Callback 类.
4.把定义的关键帧的数据,送给动画管理器
5.创建一个等待变化的节点
6.把变化节点的顶点数据与给出的变换位置进行映射,此时定义的是这些节点中每个顶点的
变化方式
7.开始动画
好的东西写不出来,只把这个程序的一些理解记录一下.
这个例子来自 OSG 的代码中的 Example->osganimationskinning
!
"#$##$#%$
&'()#$*'()*+
#$,##+ "&$*-./(.%
$0$,1## 0
"#$#0$&$1
$2-"3'4"5/625775/"680$+0##&
9.735/"5:-*-"6;-"/.((;'7557"-4*5747'(. (
'()#$*&#
<$#!
<$)!
<$9#="#&!
<$)!
<$>0>0!
<$)5"#?#9#$#!
<$4,(>!
<$@$,!
<$5#,:!
<$5#,(?!
<$5#,7)!
<$5#,(?!
<$5#,:#5#,9##!
创建的是些辅助的线条1跟随节点的运动
AA)#5=