2
我一直在嘗試使用http://www.jpct.net/來創建一個使用opengl輕鬆渲染3D圖形的Android 3D遊戲。如何爲Android 3D遊戲框架創建更新方法?
我的問題是我如何去創建使用3D框架的遊戲狀態的更新方法?
我知道在Android Activity類具有這些命令,其涉及使用glsurface視圖:
protected void onCreate(Bundle savedInstanceState) {
}
@Override
protected void onPause() {
}
@Override
protected void onResume() {
}
@Override
protected void onStop() {
}
public boolean onTouchEvent(MotionEvent me) {
}
然後GLSurfaceView.Renderer類有這些方法。
class MyRenderer implements GLSurfaceView.Renderer {
public MyRenderer() {
}
public void onSurfaceChanged(GL10 gl, int w, int h) {
}
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
}
public void onDrawFrame(GL10 gl) {
}
}
雖然我能夠使用jpct教程繪製圖像,迴應他們,並計算幀速率,它不調用更新方法還是有辦法,以確保一個接近恆定的幀速率,因爲它處理其用戶輸入檢查onTouchEvent方法,而我的遊戲需要更新時,不觸摸屏幕。
有沒有人有任何建議如何確保更新方法被調用並使用onDrawFrame方法處理?我認爲這將涉及生成第二個線程調用更新,但我不知道如何保證它與onDrawFrame方法正確同步。有沒有人有任何建議如何處理?
我有單獨的線程,它的工作,直到我想在GLThread(一個'onDrawFrame'被調用)和我自己的線程之一同步:http://stackoverflow.com/questions/11639734/synchronizedwith -glthread功能於安卓 – 2012-07-24 21:43:04