通常建議不要使用矢量圖形的手機遊戲,或預光柵化操作 - 對性能。這是爲什麼?我雖然那OpenGL是至少擅長畫線/三角形渲染屏幕上的圖像...OpenGL的矢量圖形在移動設備上渲染性能
回答
柵格化他們緩存它們爲圖像,以便減少開銷發生VS計算每一個座標矢量和繪圖(更多抽獎週期和更多的CPU使用)。繪製一個矢量就是這樣,你在每次調用時都是從一個點到另一個點繪製弧,而在一個帶有緩存的圖像文件的特定座標上顯示一個圖像。
有很多的在App Store的3D遊戲。它們的渲染難度比平均2D矢量遊戲要高10倍,但通常沒有性能問題!我錯了嗎? – cubuspl42 2013-05-09 18:53:54
生成3D模型的3D程序就是這樣,是的。但是,比較3D遊戲與任何2D遊戲的表現,你會看到不同之處。 3D遊戲使用光柵圖形作爲物體的圖像,因此它們是2的混合體。它歸結爲預先渲染的圖像和動態創建的圖像。 – 2013-05-09 18:57:27
我認爲如果您認爲3D遊戲中沒有任何性能問題,您會被誤導。與任何3D遊戲開發者交談,他們會告訴你優化是一切,不應該被當成自動魔法。很難讓3D遊戲在移動設備上表現良好,直到過去一年,甚至在大多數情況下限制質量與數量(幀速率)以實現可播放性。關鍵要記住的是,一切都只是一個工具,使用正確的工具來完成工作。如果您需要可縮放圖形,請使用SVG,如果不是,則利用柵格的性能優勢。 – 2013-05-09 19:00:04
答案取決於硬件。你使用GPU還是非?今天,帶有Android和IOS的現代移動設備在芯片組中嵌入了GPU單元。 這款GPU非常適合使用矢量圖形。爲了探究這一點,大多數GPU除了有一個或多個像素處理器之外,還有一個專用的幾何處理器。 (例如Mali-400 GPU)。 舉例來說,讓我們假設你想繪製一個200個不同顏色的透明圓圈。 如果你用現代的OpenGL來做,你只需要一組幾何圖形(形成一個圓的三角形列表)和每個圓的參數列表,比如說位置和顏色。如果您將這些信息提供給GPU,它將很快並行繪製。
如果您在使用不同的紋理爲每個顏色做到這一點,你的程序將是非常沉重的(在存儲大小),可能會更慢,由於內存帶寬問題。
這取決於你想做的事,和硬件。如果你的硬件沒有GPU,你可能應該預渲染你的圖形。
- 1. 在OpenGL中渲染矢量圖形?
- 2. CSS和html在移動設備上不能很好地渲染
- 3. OpenGL渲染圖像的方法(性能)
- 4. 在網站上有渲染矢量圖形的標準嗎?
- 5. 如何在移動設備上提高reactjs初始渲染性能?
- 6. 如何在Android上使用OpenGL渲染2D圖形/圖形?
- 7. OpenGL在矩形內渲染
- 8. 在opengl中渲染1000多個圖形
- 9. 從OpenGL中的位圖渲染地形
- 10. opengl中渲染對象的移動
- 11. 移動設備上的CSS3性能
- 12. 在將CALayer渲染爲PDF輸出時維護矢量圖形
- 13. iPhone上的動態圖形渲染?
- 14. OpenGL音頻波形渲染
- 15. OpenGL三角形不渲染
- 16. OpenGL渲染大量的動態2D圈
- 17. 三星設備上的OpenGL渲染問題
- 18. 在OpenGL渲染上下文中疊加圖形
- 19. OpenGL問題:無法在屏幕上渲染幾何圖形
- 20. 圖形設備上的移調圖R
- 21. CALayer支持矢量圖形還是僅處理預渲染的柵格圖形?
- 22. 在lwjgl渲染中移動渲染器
- 23. 無法在openGL中渲染形狀
- 24. 渲染動作性能
- 25. Java2D圖形只能通過OpenGL管道渲染
- 26. 用OpenGL渲染四邊形的問題
- 27. OpenGL:渲染樹形菜單的策略?
- 28. 「渲染」透明的多邊形OpenGL
- 29. Opengl的四邊形不渲染
- 30. Opengl的矩形慣於渲染
柵格化他們緩存他們,所以開銷較少發生VS計算每一個座標矢量和繪圖(更多抽獎週期和更多的CPU使用率) – 2013-05-09 18:49:46