osganimationmorph例子

本文详细介绍了如何使用osgAnimation库创建渐变动画,包括关键帧(KeyFrame)、KeyframeContainer、Interpolator和Sampler等核心概念。通过示例展示了创建一个FloatLinearChannel,并设置目标为'MorphNodeCallback',结合MorphGeometry实现几何体的渐变效果。
摘要由CSDN通过智能技术生成
该例子演示了渐变动画。
应用osgAnimation::Animation库
这个库是专门的动画库,里面有几个关键的概念:
KeyFrame关键帧,记录一个运动中指定时间的几个关键的值,根据这几个值其他的时间就可以进行插值运算。
由于关键帧值的类型不确定,可以是值、点、旋转等等等等,因此class TemplateKeyframe : public Keyframe实现一个模板类,用于不同类型关键帧的值。
FloatKeyframe
DoubleKeyframe
Vec2Keyframe
Vec3Keyframe
Vec4Keyframe
QuatKeyframe
MatrixKeyframe
Vec3PackedKeyframe
FloatCubicBezierKeyframe
DoubleCubicBezierKeyframe
Vec2CubicBezierKeyframe
Vec3CubicBezierKeyframe
Vec4CubicBezierKeyframe
有了关键帧,就应该有包含关键帧的容器
KeyframeContainer,同样,通过模板定义一个不同类型的关键帧容器class TemplateKeyframeContainer : public std::vector<TemplateKeyframe<T> >, public KeyframeContainer
继承了std::vector因此具有了容器的功能。
上面说到了通过关键帧进行插值,因此,应该有一个插值器,根据关键帧的类型可以进行指定算法的插值。
Interpolator中的TemplateInterpolatorBase插值器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值