图形转速不均匀

mitterand 2009-04-27 07:54:06
我用glRotatef(angle, 0.0f, 0.0f, 1.0f)转动图形,angle每5度增加。

但是最后图形转动不连续,有明显的停滞。

如何得到连续转动的图形?

3X
...全文
91 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
aaaa3105563 2009-05-03
  • 打赏
  • 举报
回复
帮顶··
ccpaishi 2009-05-02
  • 打赏
  • 举报
回复
绘制的时候对时间进行精确地控制,只要时间把握住了,调用这个函数,不会出现顿的情况的,出现了一般是由于时间快慢造成的
rcyboom 2009-04-29
  • 打赏
  • 举报
回复
假设转速为v,初始角度为a0;
每次开始绘制前使用gettime得到系统时间t(如果是第一次该事件还要保留下来,假设为t0)。
绘制时候转动的角度a=a0+v*(t-t0)即可。
这样也存在一个问题,那就是计算机忙没时间渲染时也会出现跳的情况。牺牲的是视觉上的效果,但是图形是真实的。
mitterand 2009-04-29
  • 打赏
  • 举报
回复

我暂时用settimeer和转角度数来调整,有一定改进。
争取用上你说的方法。
你有你说得方法的代码吗?

3X
菜牛 2009-04-28
  • 打赏
  • 举报
回复
你每次增加5度,但是每两次之间的时间差是不一定相同的,或者说基本是不会相同的,所以应该根据两次之间的时间差和设定的转速(每秒多少度之类)计算出下次转过的角度。
mitterand 2009-04-28
  • 打赏
  • 举报
回复
请问如何使用PastTime和RotateSpeed?

3X
jdcb2001 2009-04-27
  • 打赏
  • 举报
回复
由于FPS不稳定,如果每个渲染周期旋转一个定值角度/弧度,会导致转速不均匀。最好是通过PastTime和RotateSpeed动态计算应该转动的角度/弧度

19,464

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧