繁体   English   中英

为了获得最佳性能,Android游戏的最佳格式是什么?

[英]What's the best format for an Android game for optimal performance?

我正在使用SurfaceView类编写一个小型Android游戏。 类别概述如下

   class GameView extends SurfaceView implements Runnable {
    Thread drawThread;
    boolean drawThreadIsRunning;
    Context context;
    SurfaceHolder surfaceHolder;
    Canvas canvas;

    public GameView(Context context)
  {
   super(context)
   this.context = context;
   surfaceHolder = getHolder();
   //...
  }

    public void resume() {
        // starts drawing Thread
    }

    public void pause() {
        // stops drawing Thread
    }

    public void run() {
        while (drawThreadIsRunning) {
            if (!surfaceHolder.getSurface().isValid())
                continue;

            canvas = surfaceHolder.lockCanvas();
            update(canvas);
            surfaceHolder.unlockCanvasAndPost(canvas);
        }
    }

    private void update(canvas)
   {
     updateCoordinates(canvas);
     updateDrawings(canvas); 
     e.t.c.
   }
}

我想知道的是,按照我的方式使用update()方法是否是一个好主意。 在画布的锁定和解锁之间,更新方法将移动游戏元素,绘制游戏元素,更新分数等。 这会对性能产生负面影响吗? 有没有更好的方法来构造这个?

对我来说很好。 您唯一可以做的就是将调用移至updateCoordinates();。 updateDrawings(); 等等到run()中,以节省该附加方法调用的开销,但不应引起明显的区别。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM