1)Re-Draw Vs Draw
這是一個哲學問題,但是...什麼是「正確」或「接受」的渲染方式(2d,我明白OGL的視角是如何工作的......) )在不同的分辨率?是否應該爲我的圖像(如Android APK)包含單獨的大小,並在一個畫布上單獨調整每個對象的大小,還是應該在設置分辨率的繪圖畫布上繪製,然後將該圖像的大小調整到另一個顯示畫布上?我一般來說,但是,如果你需要我是特定的,我使用Java來構建引擎。渲染:繪製一次或重新繪製? JOGL + Java2D + Java Swing會很麻煩嗎?
帶來的利益/問題:
#1) Resize at Draw
+ No additional drawing step
+ Sweet resolution
- Possible math/physics/placement issues
- Tons of math each step for scale
- Lots of resources
#2) Resize at Render
+ No additional math; one step
+ One set of images; smaller res. package
+ One set canvas size (easier to do math/phys./placement)
- Additional drawing step
- Poor resolution =(
這似乎#2是因爲利益VS問題數量的不二之選,但是......是什麼呢?有沒有標準的方式來調整2D遊戲的大小?
2)JOGL + +的Java2D的Java Swing
難道是繁瑣的使用JOGL,Java2D的,和的Java Swing在同一時間?在JOGL中做2D或佈局是否值得?爲什麼或者爲什麼不?
編輯:使用BufferedImage繪製並將BufferedImage渲染到與縱橫比相關的面板大小在swing中效率非常低。顯然,最好立即繪製到面板,同時單獨調整每個圖像/元素的大小。不是我的第一個假設...
編輯2:愚蠢的我......只是規模和翻譯圖形上下文大小調整後的分辨率的任何其他操作之前。性能提升超級酷炫。這是對這個問題的正確答案。一次繪製,縮放/翻譯。 B)
更新:我最終從頭開始創建一個BufferedImage,原始分辨率的大小。然後,我將該圖像繪製爲顯示的大小,一次。 B) – MrMysterious2502