在我的遊戲中存在一個大的地圖,我想知道如果不是繪製形狀(平均每次250+),當玩家不能看到它們會在遊戲的表現。另外,我正在檢查玩家距離大約500多個其他位置矢量(用於敵人,食物,子彈的相互作用),這需要大量的平方根。如果我使用X和Y組件進行粗略估計,這是否會顯着提升遊戲性能?JavaScript - 繪製物體脫離屏幕和其他遊戲優化
回答
回答這些問題的唯一方法就是嘗試一下,看看會發生什麼。您必須權衡計算屏幕上是否有東西與繪製它的成本的成本。再次,你將不得不測量兩個併爲自己做出決定。
至於測量距離,你可以嘗試使用距離平方來避開平方根。
或者您可以嘗試將對象存儲在數據結構中,如quadtree,它允許您只檢查附近對象的距離。或者更簡單一些:你是否真的需要所有的500個載體始終處於活動狀態?爲什麼不儲存它們,只有在需要時才激活它們?
但是,再次回答你的問題的唯一方法就是嘗試一下。我們無法告訴你這是否會大大提高遊戲的性能。只有通過嘗試才能回答這個問題。祝你好運。
我的男人凱文!我一定會研究距離平方法,並將對象存儲在「四叉樹」中,再次感謝您的幫助。 – Canatron
@Canatron沒問題。距離平方公式就是沒有最終平方根的距離公式。如果你不需要知道實際的數字,這是比較距離的好方法。四叉樹只是一種方式。有一些更簡單的方法,比如將對象存儲在玩家可以輸入的每個「區域」的不同'ArrayList'中。 –
數學並沒有落後於遊戲,它正在繪製所有這些形狀!我給玩家一個「渲染距離」,讓玩家看不到過去的圓圈(圓圈比當然屏幕更大......所以沒有什麼不同),但是性能的差異非常明顯! (直到玩家變得如此之大以至於他們能夠看到整個地圖,在這個地圖上必須繪製所有形狀...... – Canatron
- 1. 如何防止身體脫離屏幕?
- 2. 針對不同的手機屏幕優化遊戲菜單
- 3. Bootstrap的彈出屏幕脫離屏幕
- 4. 優化SVG遊戲
- 5. 重複,脫離屏幕圖
- 6. 遊戲角色移出屏幕限制
- 7. Unity3D:檢測網格的三角形與其他遊戲物體
- 8. JavaScript棋盤遊戲:尋找優化
- 9. 屏幕滾動遊戲
- 10. 爲遊戲繪製背景圖像的Java優化
- 11. 遊戲精靈和多屏幕支持
- 12. 井字遊戲java繪製遊戲
- 13. 液體物理遊戲
- 14. IsPointerOverGameObject獲取遊戲物體
- 15. 在遊戲物體位置
- 16. 在任何其他物體/繪圖前繪製東西
- 17. XNA&Lidgren 3D網絡遊戲不繪製其他模型/玩家
- 18. Android:平鋪遊戲和玩家與其他物體之間的互動
- 19. SpriteKit:添加另一個物理體時,旋轉SKNode脫離屏幕
- 20. 製作Javascript和HTML5遊戲
- 21. 優化遊戲循環
- 22. AndEngine遊戲的優化
- 23. iPhone遊戲顯示器在屏幕上偏離屏幕10個像素左右
- 24. Java猜測遊戲 - 優化和提示
- 25. 分析和優化遊戲android
- 26. C#(XNA遊戲工作室)獲取屏幕外的物體不能渲染
- 27. 當在其他物體上繪製附近物體時,OpenGL會變慢
- 28. Android到Playstation和其他遊戲機
- 29. 如何在屏幕右側離開遊戲對象時將其重新放置在屏幕左側?
- 30. 如何阻止角色脫離屏幕?
任何其他提高遊戲性能的方法? – Canatron