AndroidでのOpenGLESの使い方をおおまかに書いておきます。
■1
MyApplicationを作る。まずActivityを継承する
class MyApplication extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//AbsoluteLayoutを使うのは、後でボタンやテキストを表示させるため。
AbsoluteLayout layout=new AbsoluteLayout(this);
setContentView(layout);
//GLサーフェイスビューを生成して設定
GLSurfaceView mGLSurfaceView = new GLSurfaceView(this);
GLRenderer glRenderer = new GLRenderer(this);
mGLSurfaceView.setRenderer(glRenderer);
layout.addView(mGLSurfaceView);
}
}
■2
GLRendererクラスはGLSurfaceView.Rendererを継承する
public class GLRenderer implements GLSurfaceView.Renderer {
private Scene mScene;
private Resources mResource;
public GLRenderer(Activity activity) {
mResource = activity.getResources();//これは後でテクスチャを読み込むときに使う。
mScene = new Scene();
}
//このonDrawFrameメソッドが毎フレーム呼ばれるので、ここで描画処理、更新処理を行う。
public void onDrawFrame(GL10 gl) {
mScene.draw(gl);
mScene.update();
}
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
//ここにOpenGLの初期化処理を書いておく
}
}
■3
SceneクラスはView.OnTouchListenerを継承する
public class Scene implements View.OnTouchListener{
public void draw(GL10 gl) {
//ここにポリゴンの描画処理を書く
}
public void update() {
//ここに物体の移動処理などを書く
}
public boolean onTouch(View v, MotionEvent event) {
//ここにタッチ操作処理を書く
return false;
}
}
これをコピペしても動きません。すみません。
これで大体の流れをつかんで下さい。
0 件のコメント:
コメントを投稿