前言:
这次是从前就特别喜欢玩的“奥赛罗”,但是国内玩的人不多,后来也就慢慢淡忘了。偶然想起来,觉得还是挺有意思的,就着手开发了。之前已经写过两三个小游戏,所以开发起来也很顺畅,原以为利用业余时间几天应该能写完的,断断续续写了两三个星期。中间觉得不好又推翻重写了一次。目前只完成了java版本,后面有空的话,应该还会继续完善。
本游戏图形界面使用javaFX的Canvas画板实现:javaFX系列之Canvas画板绘制组件:最简单的画板绘制图形实现
开发历程
原本想法是通过加载一些静态图片资源来绘制棋盘和棋子,不过后来自己做的图片效果不是太满意,网上也没有找到合适的图片资源,就把这个想法给pass掉了,改成全部由canvas进行绘制。
原来设计是使用三个canvas,分别是:最底部是棋盘画板,中间是落子画板,最上层是提示落子位置画板。后来觉得三个canvas太浪费,所以把落子位置给挪到最底层棋盘画板上,每次落子完就会重绘一次棋盘和提示落子位置。为什么不适用同一个canvas进行绘制呢?因为重绘实在太耗硬件资源了,