基于JavaFX--WJFXGameEngine游戏引擎介绍与进度

来源:互联网 发布:lovelace第一位程序员 编辑:程序博客网 时间:2024/05/18 14:26

  声明:   本博客文章原创类别的均为个人原创,版权所有。转载请注明出处: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