jMonkeyEngine 3可以做2D游戏,但是复杂度比单纯的2D引擎要高一个维度。
首先,2D引擎中的一切都是图形,而3D引擎中你用的都是3D物体。当然你可以用“纸片”状的3D物体来欺骗玩家的眼睛。
其次,2D画面都是正对屏幕的,而3D中的透视摄像机会让物体看起来近大远小,你需要把摄像机模式改成“正交投影”模式,不要让它出现近大远小的情况。
再次,3D引擎中加载的都是3D模型,不太容易读取2D的地图数据。2D游戏常用 Tiled 这个工具来制作地图,而jMonkeyEngine不认识这个工具生成的文件。
但这都不算什么难事,我专门做了一个TMXLoader插件,可以在jME3中读取Tiled制作的2D地图。你在这里可以找到我的这个插件:
https://github.com/jmecn/TMXLoader我在这篇教程中,顺带着介绍了下3D转2D的原理,也许会有所帮助。
http://blog.jmecn.net/chapter-13-controlling-game-logic