Android棋盘游戏:很多观点还是一个大观点?

时间:2014-06-03 15:49:55

标签: android 2d 2d-games

我正在尝试制作一款基于2D回合的安卓游戏,它具有像棋盘一样的网格。我想到了两种不同的渲染板的方法:

  1. 一个大的自定义View,用于计算所有内容并呈现所有切片。任何一个图块上的任何动画都需要重新绘制整个视图;所以这个视图将一直重新绘制。

  2. 包含许多较小的自定义ViewGroup的大型自定义View,每个View代表一个磁贴。只有需要重绘动画的图块才能重绘。 ViewGroup负责确保每个View位于屏幕上的正确位置。

  3. 什么可能是资源消耗较少的方法?或者是否有一种我没想过的更好的方法?

    可能需要考虑的其他因素:

    • 除了网格图块之外,还有精灵可以在图块之间移动并移动。瓷砖本身不会翻译。

    • 棋盘上的棋子数量因游戏而异,但棋盘总是长方形。

    • 电路板通常很大,以至于典型的屏幕不适合所有的瓷砖;所以用户应该可以平移和放大电路板。

1 个答案:

答案 0 :(得分:1)

寻找大型自定义View

如果你所担心的只是在绘图过程中效率较低,那么你可以使用invalidate(Rect) et simila来使一些小脏区无效。这将只重绘View的一小部分区域。大型自定义View还可以简化动画和其他跨越图块边框的绘图。

要实现捏拉缩放功能,请查看here

为什么不使用AndEngine等游戏引擎?