使用Android和OpenGL我調用drawFrame(GL10 gl)方法,該方法在系統準備好渲染另一個幀時繪製。控制渲染的OpenGL drawFrame方法嗎?
在一個單獨的遊戲循環線程中,我控制着更新和碰撞檢測測試。
我有一個攝像頭跟着一個與地面靜止的物體。物體被加速力拉下,但物體檢測到它與地面的碰撞,並將其自身放回到應有的位置。
因爲我有兩個線程,當模擬只是坐在那裏時,有時渲染線程會在碰撞檢測系統有時間重新定位對象之前,將對象拉到地面下方時繪製對象。其結果是偶爾在隨機時間上下晃動的相機。
我讀過,你可以控制何時調用drawFrame方法,這將解決我的問題,但我聽說你不應該那樣做。爲什麼我不應該那樣做以及如何解決我的問題?
我相信這個問題歸結爲確保兩個線程不會同時執行。我寧願控制它。 – Matthew