現時点では、アニメーション付きのチェス ゲームで SurfaceView を試しています。エミュレーターで約 8 FPS しか得られません。チェス盤と 32 個のチェスの駒を描画し、すべてを回転させて (滑らかさを確認するため)、アンチエイリアシングを使用しています。Droid では約 20FPS になるので、あまりスムーズではありません。OpenGL を使用せずに、非常に少ない単純なアニメーションでゲームを実装することは可能ですか?
これは私がすべてのフレームで行うことです:
// scale and rotate
matrix.setScale(scale, scale);
rotation += 3;
matrix.postRotate(rotation, 152, 152);
canvas = surfaceHolder.lockCanvas();
canvas.setDrawFilter(new PaintFlagsDrawFilter(0, Paint.FILTER_BITMAP_FLAG));
canvas.setMatrix(matrix);
canvas.drawARGB(255, 255, 255, 255); // fill the canvas with white
for (int i = 0; i < sprites.size(); i++) {
sprites.get(i).draw(canvas); // draws chessboard and chess pieces
}