Subversion Repositories AndroidProjects

Rev

Rev 32 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
32 chris 1
package com.gebauz.pingK;
2
 
3
import javax.microedition.khronos.egl.EGLConfig;
4
import javax.microedition.khronos.opengles.GL10;
5
 
6
import com.gebauz.framework.util.GLUtil;
7
import com.gebauz.framework.util.ResourceManager;
8
 
9
import android.opengl.GLSurfaceView;
10
 
11
public class GameRenderer implements GLSurfaceView.Renderer
12
{
13
 
14
        private GameActivity mActivity = null;
15
 
16
        private long mSystemTimeMs = 0;
17
 
18
        public GameRenderer(GameActivity activity)
19
        {
20
                mActivity = activity;
21
                mSystemTimeMs = System.currentTimeMillis();
22
        }
23
 
24
    public void onSurfaceCreated(GL10 gl, EGLConfig config)
25
    {
26
        GLUtil.setGL(gl);
27
    }
28
 
29
    public void onSurfaceChanged(GL10 gl, int w, int h)
30
    {
31
        GLUtil.setGL(gl);
32
 
33
        // recreate resources
34
        ResourceManager.getInstance().recreateResources();
35
 
36
        mActivity.onSurfaceChanged(w, h);
37
    }
38
 
39
    public void onDrawFrame(GL10 gl)
40
    {
41
 
42
        // UPDATE
43
                long currentTimeMs = System.currentTimeMillis();
44
                long deltaTimeMs = currentTimeMs - mSystemTimeMs;
45
 
45 chris 46
                mActivity.update((float)deltaTimeMs / 1000.0f);
32 chris 47
 
48
                mSystemTimeMs = currentTimeMs;
49
 
50
        // RENDER
51
        mActivity.render();
52
    }
53
 
54
}