查看: 3270|回复: 8

关于路径动画osg::AnimationPath

[复制链接]

该用户从未签到

发表于 2013-5-9 19:30:39 | 显示全部楼层 |阅读模式
我要实现的效果:
一个汽车沿指定路径跑。
path.insert(0,pt(pos,quat));
path.insert(10,pt(pos,quat));
path.insert(20,pt(pos,quat));
假如有三个点,构成两条路径。
汽车在第一条路径上走的时候,需要旋转一个角度。
在第二条路径上走的时候,也要旋转一个角度。
我希望是旋转一个角度后,就按照这个方向跑。
结果是:汽车边跑边旋转。
也不知道我迷失到哪里了,想不通,求教。

该用户从未签到

发表于 2013-5-9 19:45:06 | 显示全部楼层
是不是你的quat计算出了问题

该用户从未签到

 楼主| 发表于 2013-5-9 20:07:47 | 显示全部楼层
bigboy 发表于 2013-5-9 19:45
是不是你的quat计算出了问题

quat值不是问题。
关键是边移动边旋转。
我希望是汽车跑到另外一条路径时,沿Z轴做个旋转。
然后就不再旋转,一直跑下去,直到下一个转角,
再沿Z轴做个旋转。

该用户从未签到

发表于 2013-5-9 21:58:26 | 显示全部楼层
位置和旋转角度是线性差值的,旋转和位置一样会伴随整个运动过程

你可以在转角处多插入几个位置信息

该用户从未签到

发表于 2013-5-10 08:13:04 | 显示全部楼层
这个很好办啊 移动的时候 不设置quat 就可以了  到了转弯的时候 不设置移动就可以了 设置quat

该用户从未签到

发表于 2013-5-10 08:13:27 | 显示全部楼层
如果都设置了 是会都进行插值计算的

该用户从未签到

 楼主| 发表于 2013-5-10 17:02:27 | 显示全部楼层
ago 发表于 2013-5-9 21:58
位置和旋转角度是线性差值的,旋转和位置一样会伴随整个运动过程

你可以在转角处多插入几个位置信息

孔子说得对。怎样用插值法把直接变曲线?

该用户从未签到

 楼主| 发表于 2013-5-10 17:05:01 | 显示全部楼层
liuzhiyu123 发表于 2013-5-10 08:13
如果都设置了 是会都进行插值计算的

我们的ogre组,就是把直线变曲线。
比如三个点,组合成一条曲线。
osg怎样根据这三个点生成曲线上的点。
还是osgAnimation有曲线运行的方法?

该用户从未签到

发表于 2013-5-11 07:35:19 | 显示全部楼层

RE: 关于路径动画osg::AnimationPath

gisroad 发表于 2013-5-10 17:05
我们的ogre组,就是把直线变曲线。
比如三个点,组合成一条曲线。
osg怎样根据这三个点生成曲线上的点。 ...

osgAnimation中有相关插值的计算函数
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表