LibGDX游戏引擎-1-项目创建(HelloWorld)

注:部分文章内容摘录自 奋斗小土豆丶 的博客文章,后面的系列文章不再做相关说明。

libGdx是一个跨平台的2D/3D的游戏开发框架,它由Java/C/C++语言编写而成。

它基于Apache License, Version 2.0协议,对商业使用和非商业使用均免费。代码托管于Github中。最新版本为0.9.9.

支持目前各种流行的游戏组件。十分好用!

官网:http://libgdx.badlogicgames.com
 

1.下载libgdx最新版本0.9.9的包,解压,打开libgdx-0.9.9gdx-setup-ui.jar

2.点击Create按钮,进入项目编辑界面,

进入之后界面如下:

//左边
输入项目名称、
包名
平台项目

//中间
设置好libgdx版本包

//右边
点击右下角 open 开头的按钮

进入launch界面,点击launch按钮等待 all done!

4.打开Eclipse 导入 Exist project,一共N个.

5.

(1)引入后,Android项目会报错

报错原因:

没有添加安卓原生的包

解决办法:

是打开项目中project.properties文件,然后将target=android-15修改为你下载的

安卓版本号,例如我下载的是安卓2.3.3的包就修改为target=android-10
(2)AndroidManifest.xml文件会报错
主要原因是转屏的原因,只要将

android:configChanges=”keyboard|keyboardHidden|orientation|screenSize”

修改android:configChanges=”keyboardHidden|orientation”,这是一个转屏的基本问题,

这里就不赘述了。这样XML文件的报错就消失了。
6.这里解释下几个项目的类型。

libGDX的特点
开源,目前开源的游戏框架并不少见,但是libgdx的优势是相当明显的,主要是体现在以下几个方面:
强兼容性
libgdx兼容多种平台系统(Windows、Linux、Max OS X、Java Applet、Javascript/WebGL),包括移动系统Android[4](1.5版本+)和iOS。对于Android平台的支持在Android阵营和相关市场日益扩大的情况下libgdx的使用者越来越多。另外,基于RoboVM可以免费实现iOS兼容。
同时极强的兼容性为调试和开发提供了便利。你可以使用Android上面同样的代码在桌面PC上面编写,测试,调试你的应用(也就是说,你可以不需要打开Android模拟器,就可以调试用Libgdx引擎写的游戏应用)。它剥离了常见的Windows之间/ Linux应用程序和一个Android应用程序的区别。一般的开发过程是尽可能的在停留桌面PC上,同时周期性的检查你的当前代码是否仍然能在Android运行。
高效性
Libgdx主要是用Java写的,其中也掺杂了一些C/C++代码,这些代码是为了处理一些对性能要求很高的操作,比如物理引擎或者音频处理。作为用户,你只需要关注Java的封装就可以了,它已经把所有的本地代码封装好了。相比于其他android游戏引擎,libgdx的效率优势十分明显。
架构清晰
Libgdx由audio、files、graphics、math、physics、scenes、utils这些主要模块所组成,它们分别对应了Libgdx中的音频操作,文件读取,2D/3D渲染,Libgdx绘图相关运算,Box2D封装,2D/3D游戏组件,以及Libgdx内置工具类。
封装
Libgdx对于物理引擎[5]的封装也是让人惊讶的。 它足够疯狂的使用jni封装了box2d的c++版本,使得其运行效率比其他同级的物理引擎如jbox2d快不少。现在流行的几个包含物理引擎Android游戏引擎(如Andengine、Rokon等),几乎都在用libgdx。如果你的游戏(特别是针对Android平台的)准备使用物理引擎,请优先考虑Libgdx。
工具
Libgdx还拥有相当数量的开发工具。如果Particle editor[6](粒子编辑器),Hiero bitmap font generator[7](文字生成工具),Texture packer[8](图片合并工具),TWL布局编辑器,Gdx Setup UI。
参考资料
Libgdx的文档数量已经相当完善了,官方的wiki[9]已经有较为完整的基础介绍和一些示例。不过由于官方的示例都是英文的,可能对于部分开发者来说学习难度较大。
当然更多的细节可以在相关社区[10]和其他使用者的文章和讨论中找到答案,博客园中夜明的孤行灯[11]有过一系列的入门文章,这个系列的文章基于0.93版本,和最新版本有一些细节上的差异,但是仍不失为国内最完整和全面的教材。