1.example_osganimate
一)演示了路径动画的使用(AnimationPath、AnimationPathCallback),路径动画回调可
以作用在 Camera、CameraView、MatrixTransform、PositionAttitudeTransform 等四种类型的
节点上。二)演示了 osgSim::OverlayNode 的使用
2.example_osganimationeasemotion
一)演示了 osgAnimation::EaseMotion 的使用,EaseMotion 可以用于表达位移、速度值随时
间的变化情况,通过不同的模板参数(functor),实现了不同的变化曲线。
二)程序中用到了一个使用 osgWidget 构造的弹出式菜单。
3.example_osganimationhardware
一)演示了在 osgAnimation::RigGeometry 中使用自定义 RigTransformImplementation 的方法。
二)可以参考程序中获取骨骼动画模型包含的动画列表的方法。
4.example_osganimationmakepath
一)演示了 osgAnimation::Sampler 采样器的使用,更新物体颜色(vec4)、物体位置
(vec3)。Sampler 派生模板类用于在一组已知离散数据样本的基础上,进行插值计算,得
到连续数据。通过模板参数支持多种插值方法。
二)在更新物体位置这方面,与路径动画 AnimationPath 类似,但它需要自己写回调来更新
节点矩阵,好处是能够使用更灵活的方式来进行数据采样,而 AnimationPath 只能进行线性
内插。
5.example_osganimationmorph 一)演示了利用 osgAnimation::MorphGeometry 实现几何体变
形动画的方法。
6.example_osganimationnode 一)同 osganimationmakepath 演示的功能基本相同。
7.example_osganimationskinning
一)演示了使用 osgAnimation::Skeleton、osgAnimation::Bone 构建骨骼,使用
osgAnimation::Animation、osgAnimation::Channel 构建动画,使用
osgAnimation::RigGeometry 构建蒙皮,以及使用 osgAnimation::BasicAnimationManager 播放
骨骼动画的流程。可以做为学习 osgAnimation 骨骼动画实现结构的参考。
8.example_osganimationsolid
一)演示了利用多个 Channel 对一个物体进行运动控制(最终落实到更新 MT 节点的矩
阵)。与示例 osganimationmakepath 的区别在于,这里使用了
osgAnimation::Channel、osgAnimation::Animation、osgAnimation::UpdateMatrixTransform,
对同一个物体应用了多个运动控制的叠加。
9.example_osganimationtimeline 一)演示了 osgAnimation 中的时间线控制。
osgAnimation::Timeline、osgAnimation::TimelineAnimationManager。timeline 是做什么用的?
10.example_osganimationviewer
一)演示了 osgAnimation 骨骼动画的加载及播放控制,可以在多个动作间切换,但播放多
个动作、动作暂停等方面似乎不好使。
二)程序中出现了一个使用 osgWidget 构建的播放控制 GUI,还有一个可以滑入滑出的菜
单,可以作为 GUI 构建的参考。
11.example_osgautocapture
一)一个自动截屏的示例程序,用到了自定义