声明: 本博客文章原创类别的均为个人原创,版权所有。转载请注明出处:http://blog.csdn.net/ml3947,另外本人的个人博客:http://www.wjfxgame.com。
计划进行JavaFX的游戏引擎开发已经许久了,但是因为笔记本的数据丢失,导致以前写的代码都不见了。最近开始动笔的时候也不过是4月中旬而已。代码量并不是很多,但是目前基本上雏形已经出来了。也差不多实现了一般的功能。
目前正在开发的,只有大概12个包。
1.core包目前只有WApplication程序的主体框架类和WSystem系统参数类。
任何WJFXGameEngine的游戏主类直接继承WApplication即可。
2.core.astar包是A*Star寻径算法的包,可直接在RPG和SRPG等游戏中使用。这个是从本人大学时候基于XNA开发的游戏引擎中移植过来的。
3.component包里面是一些基础Object。
这个也是游戏开发中比较重点的包。目前包含一些基础的物件。游戏引擎中所有的类都继承WObject,WObject包含一系列的方法,是比较核心的类。而像WAnimation是帧动画的类,WBackground用于背景(支持RMVX的对话框样式)。WPanel是面板类,可以往面板上添加子Object,子Object会随着Panel移动。WImage是图像类,支持普通和分割等类型。其他的顾名思义。
另外,WObject都进行了事件封装,任何继承WObject的物体都可以进行单击长按拖动等事件。
4.action包,目前只有渐变,平移和缩放三个,和事件的接口。任何继承WObject的物体都可以执行这个些Action。
5.ui包,也是本人要重点开发的包,目前包括button,menu,dialog,progress,messagebox等控件。其中messagebox支持通常游戏对话的逐字显示等功能。
6.effect包,里面是一些简单的天气特效,可以通过几行代码直接运用到游戏中。
7.另外今天进行了重大更新。WJFXGameEngine中新增了TMX包,我们可以直接通过
tmxTiledMap = new WTMXTiledMap("test1.tmx");
tmxTiledMap.setLocation(0, 0);
addObject(tmxTiledMap);
简单的几行代码将Tiled地图编辑器编辑的地图显示出来,支持地图参数Object参数,多图层多图块,图层透明度等。
如下图所示:
当然,如果是看过我以前文章的就知道,这个是我用Cocos2d-x开发的RPG游戏中的地图。我直接copy过来就可以直接使用了。
8.physics包,只是物理引擎包,这个也是正在开发的,提供模拟真实世界的物理效果。我已经有文章讲解过,如何在javafx中使用物理引擎。
至于Tools包就不做过多讲解了。主要是一些工具类。
目前基于JavaFX的开源游戏引擎WJFXGameEngine进度就是这些。由于工作和其他的原因,进度不算很快。代码量和示例目前也不是很多,而且还要进行测试。
所以还要继续加油。希望能尽快面世。
最近的重大更新估计也就是添加了TMX地图吧。
转载请注明出处:http://blog.csdn.net/ml3947