Re: [程式] 製作動畫的問題
※ 引述《littleshan (我要加入劍道社!)》之銘言:
: 因此(我看到的)大多遊戲都沒有固定 fps
不知道有沒有什麼例子可以舉一下
固定fps我覺得可以避免過多的畫面更新
我想知道是哪一類型的遊戲會選擇不這樣做
: 另外一個問題是
: 當你計算物體的位移時
: 不能用 1/30 秒去算
: 因為 render 要花時間
: 而且每張 frame 花的時間不一樣
: 如果都用 1/30 秒去算
: 就會發生物體移動時快時慢的現象
: 若要固定 fps 為 30
: 我會先計算畫出第一張 frame 的時間,假設為 t
: 然後設定 timer 在 (1/30 - t) 秒後重繪一次
: 因為 t 會變動
: 因此每次重繪完 都要重新設定一次 timer
其實好像並不會發生你說的這種狀況
因為其實timer並不是跑完函式才繼續計算中間的間格時間的
也就是並非在(1/30 - t)秒後重繪一次
而是利用取得系統時間
計算間格時間
當超過或等於我們設定的值
才呼叫callback function
簡單的說 fps 30的情形
就會讓你顯現的結果是固定fps 30的樣子
具體的舉例
設定一段動畫是球落地的動畫(fps30)
而總時間是1秒(也就是30格)
那麼假設其中的第一個畫面在畫的時候計算量太大(timer跑第一次)
拖到一秒才畫完
所以當timer跑第二次的時候
會發現從開始動畫已經過了1秒 (不是從畫完以後計算)
因此第二格畫出來的會是球已經落地的樣子
--
http://www.wretch.cc/blog/killman
http://www.wretch.cc/album/killman 作品集
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.111.5.43
→
01/08 11:46, , 1F
01/08 11:46, 1F
→
01/08 11:47, , 2F
01/08 11:47, 2F
→
01/08 11:47, , 3F
01/08 11:47, 3F
→
01/08 11:54, , 4F
01/08 11:54, 4F
→
01/08 11:56, , 5F
01/08 11:56, 5F
→
01/08 11:59, , 6F
01/08 11:59, 6F
→
01/08 12:00, , 7F
01/08 12:00, 7F
討論串 (同標題文章)
GameDesign 近期熱門文章
PTT遊戲區 即時熱門文章
46
88