我想畫一個太空船在窗口的中心,因爲它通過空間的權力。爲了滾動世界窗口,我使用glOrtho
來計算船舶的新位置並以此爲中心放置一個4000x3000的窗口。我的測試是按下前進按鈕並向上移動船。在大多數機器上沒有問題。在一臺速度較慢的Linux筆記本電腦上,我每秒鐘只能拍攝30幀,船舶來回搖晃。比較它相對於鼠標指針(不移動)的位置,可以清楚地看到船向前和向後跳過幾個像素。星星也顯示爲模糊成短線。使用glOrtho進行滾動遊戲。宇宙飛船「不寒而慄」
我想查詢船的中心像素值,看看它是否正在改變。
是否有OpenGL
的方式來提供一個世界點,並獲得它將被轉換爲像素點?
+1這是一個新穎的想法。我現在不喜歡這樣做,因爲現在一切都很好,很簡單。我不明白你最後一段的公式。爲什麼加1,然後乘以屏幕尺寸的一半? – ScrollerBlaster 2012-03-08 16:01:59
@ScrollerBlaster:這不是「一種新穎的想法」;它是*如何完成*。幾十年來,遊戲一直在這樣做。 'glOrtho'用於描述視口內視圖的大小(比這更復雜一點)。你想要的是一個跟蹤船舶位置的*相機*。這與'glOrtho'無關。擁有攝像頭在數學上等同於相對於船隻移動世界。 – 2012-03-08 16:23:55
@Nicol我不知道這一點。爲什麼不使用glOrtho移動相機?它當然似乎更直觀。 – ScrollerBlaster 2012-03-08 17:03:02