作者littleshan (我要加入剑道社!)
看板GameDesign
标题Re: [程式] 制作动画的问题
时间Mon Jan 7 21:49:10 2008
※ 引述《pychang78 (BU)》之铭言:
: 标题: [程式] 制作动画的问题
: 时间: Mon Jan 7 02:07:08 2008
:
: 我目前自己用OpenGL写个射击游戏
: 目前碰到动画的部份 需要移动3D物件或镜头
:
: 动画影格之间的时间,一般来说都是以什麽为依据的啊?
通常是反过来做
因为你每画一张 frame 必定要用掉一些时间
所以会先去计算画出上一张 frame 用了多少时间
然後把这个时间乘上物体的移动速度 算出正确的移动距离
: 我的作法是以画面重绘的次数为依据
: 设个global变数来存已经画了几个frame
: 然後再以这个变数去判断我接下来要做什麽移动
看不太懂你的意思
但也许和我讲的是一样的道理
: 还是说我要设定个timer,每隔几毫秒call一次
这做法不好 (以下解释)
: --
:
※ 发信站: 批踢踢实业坊(ptt.cc)
: ◆ From: 61.228.111.33
: 推 yk66:物体在两个frame间的移动距离建议用两frames的elapsed time算 01/07 02:59
: 推 killman:设个timer. timer的间格时间依照你要多少fps来设定 01/07 08:57
: → killman:例如30fps就是每跑 1/30秒 才作一次改变 01/07 08:59
问题在於你还要考虑画出来的时间
如果 1/30 才画一次
那麽 fps 一定低於 30
因为画出场景的时间多半都不固定 (视场景复杂度及硬体速度而异)
所以大多游戏不会事先决定 fps
而是用前述的方法去更新画面
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.163.162.71
1F:推 pychang78:谢谢你 我大概懂了 :) 01/07 23:57