我是游戏编程新手。我只是想知道,对于一个简单的棋盘游戏(比如说井字游戏或西洋跳棋),为棋盘使用多个 Canvas 是个好主意吗?我的意思是,每个 Canvas 都可以代表棋盘上的每个方 block 。
我觉得很多人倾向于这样做,因为它使逻辑简单。您让 CSS 完成所有间距和烦人的方形分隔。但我不知道这样做是否是个好习惯。
由于我是新手,我觉得现在避免走捷径对我创建复杂的东西很有帮助。那么,您对每个棋盘格的单独 Canvas 有何看法?
最佳答案
最重要的是找到一个平衡点并理解为什么您会使用一个 Canvas 而不是分层 Canvas 。
对于一款井字游戏来说,只需要一个即可,因为那里没有任何需要不断更新的东西。如果也更容易维护。 事件驱动(即,在您点击/做某事之前什么都不会发生)这样的游戏/应用程序通常不会受益于多层。
当您使用多个 Canvas 时,通常是因为您有一个静态或复杂的背景(或前景),并且一些在其上移动的对象需要平滑移动。这将是分层 Canvas 的一个很好的候选者,因为它允许您仅清除和重绘移动对象的区域,而不是渲染背景(特别是在背景是合成的情况下)。
处理分层 Canvas 并不比处理一个 Canvas 复杂多少,但您需要跟踪执行绘制操作的位置。您可以使用带有嵌入式信息的对象来执行此操作,或者为了获得额外的性能,请使用数组/变量。
关于javascript - 多 Canvas 棋盘游戏与单 Canvas ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17460174/