作者kencool107 (臉都歪了)
看板Flash
標題[問題] 持續移動的球 不使用enter_frame
時間Thu Mar 15 14:15:39 2012
場景上有顆持續移動的球 撞到牆會反彈
小弟我目前的做法是用ENTER_FRAME
讓球每次的x,y坐標移動
可是有個問題
使用ENTER_FRAME當我今天把FPS調或調低的時候
球的速度就不一樣了
請問有沒有不使用ENTER_FRAME的解法
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.251.55.25
1F:→ kencool107:補充一下 ,也不想使用TIMER 03/15 14:27
2F:推 jeaby:Tweener 03/15 14:36
3F:→ jeaby:但是碰撞判斷還是得用ENTER_FRAME 03/15 14:38
4F:→ ufoufoufo:Tweener不錯,不過一般來說FPS應該很少在動態調整吧 03/15 17:21
5F:→ ufoufoufo:建議盡可能先考慮好用的FPS就別改了 20~40都還蠻合理的 03/15 17:21
6F:→ kencool107:可是如果放上IE的話 FPS還是會跟設定的一樣嗎@@? 03/15 17:34
7F:→ kencool107:不是聽說IE會鎖flash的資源還什麼的? 03/15 17:35
8F:→ ufoufoufo:基本上在瀏覽器內執行的一定會比直接在FlashPlayer跑慢 03/15 18:57
9F:→ ufoufoufo:但並不會差太多,如果變的很慢,那就是你程式的問題了 03/15 19:00
10F:→ ufoufoufo:要修正的可能就是程式的效能,而不是調高FPS可以解決的 03/15 19:01
11F:推 jeaby:瀏覽器在背景的話 flash會有sleep mode的問題 FTP會降 03/15 22:42
12F:推 cjcat2266:還是可以用enter frame來更新位置,只不過方法要從 03/16 06:13
13F:→ cjcat2266:frame-based movement改成time-based movement 03/16 06:13
14F:→ cjcat2266:也就是說用getTimer()計算兩個frames之間的時間差 03/16 06:13
15F:→ cjcat2266:然後計算正確的位移量,這跟是不是用enter frame或timer 03/16 06:13
16F:→ cjcat2266:沒有任何關係 03/16 06:13
17F:→ cjcat2266:基本上就是利用 x += v * dt 這條式子 03/16 06:14
18F:→ kencool107:樓上精闢 感謝 03/16 09:18