libgdx 环境搭建

来源:互联网 发布:淘宝网包包新款男士 编辑:程序博客网 时间:2024/04/27 18:58

1:环境搭建:

 

1)首先进入官网,http://libgdx.badlogicgames.com/download.html  点击下方的Releases,进行下载最新的版本即可。这个为我们开发使用的jar和so库,我们如果纯粹开发,不想去看源码,则下载这一个就可以了。

 

(2)源码下载:

点击上方主页的Source,进入github libgdx的主页,https://github.com/libgdx/libgdx 找到右边的Download ZIP进行下载下来。

 

源码阅读,使用Source Insight 即可。

 

下来我们解压(1)下载下来的压缩文件。

目录为:


目录介绍:

 

 armeabi armeabi-v7a  为手机开发的so库

 Docs为说明文档

 Extensions 扩展的三方库

 Sources jar源码

x86 windows开发库

Ios 苹果开发库

后面的jar包为我们需要引入的jar库文件

其中gdx-setup.jar 为我们开发的图形化操作界面。

 

(3)下载java环境搭建。

    去主页找到最新的JDK进行下载http://www.oracle.com/technetwork/java/javase/downloads/index.html,下载下来进行安装即可

(4)去android主页下载最新的SDK包,去下载eclipse-java-helios-SR2-win32 环境。Eclipse为我们后面一直开发android的开发环境。

 

进行如上的操作后,此时我们的准备环境则完成了。下来我们开始进行demo操作,熟悉下这个引擎。

 

双击gdx-setup.jar文件,出现如下界面:


这里我们进行选择,设置我们的包名,类名,生成路径,其中Android SDK 设置为我们的android SDK主目录。然后我们呢可以选择平台,默认是全部勾选,如果只想做android,则去掉除android之外的对勾。

点击生成,此时第一次生成时间会比较长,因为系统去下需要的jar库去了,我这边第一次使用了26分钟左右,最终生成成功。

 

 

这边生成的是只有android版本的,具体目录为:

 

Androi目录为:

现在我们真正开发会在core目录里面,android目录只是为了搭建android平台框架而存在。

我们要在eclipse中将android目录导入,这边发现一个问题是生成出来的没有lib,因此我们需要将gdx-jar gdx-backend-android.jar放进libs目录,然后我们需要将core编译配置到android环境里面,我这边的操作是将core\src下的文件复制到android\src里面进行开发的。

2 demo查看:

src\com\mygdx\game\android 里面的AndroidLauncher.java 为主界面,我们打开来看下:

 

public class AndroidLauncher extends AndroidApplication {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();initialize(new MyGdxGame(), config);}}


 

关键函数:

initialize(new MyGdxGame(), config);


 

如此以来,我们就将我们的游戏主类挂载上来。

我们打开主类

public class MyGdxGame extends ApplicationAdapter {SpriteBatch batch;Texture img;@Overridepublic void create () {batch = new SpriteBatch();img = new Texture("badlogic.jpg");} @Overridepublic void render () {Gdx.gl.glClearColor(0, 0, 0, 1);Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);batch.begin();batch.draw(img, 0, 0);batch.end();}} 


关键函数:

Render() 这个函数会一直进行调用,所有我们的游戏推进,都是在这里完成的。

下来我说下整个流程:

 

系统在android架构的主activity里面,使用initialize 将一个继承ApplicationAdapter 的对象挂接上来,如此以后,系统在initialize 里面将android上面的GLview,输入,按键,文件,网络等初始化完成,然后在GLviewonDrawFrame 里面一直调用注册进来的监听的render函数。onDrawFrame 机制是android提供出来,一直进行调用,来进行渲染,驱动游戏进程。

 

如此下来,我们开发游戏时,记住我们一直在一个大的循环里,一直有一个render进行调用,这样子的话,那么我们就可以只关注render即可,我们实际开发,则是围绕这个render开展,具体的可以等下一节来讲解。

这节我们再来说下引擎框架:

官网位置:https://github.com/libgdx/libgdx/wiki/Modules-overview

我们来说下游戏的开发思路:

在一个大的循环里面,使用时间推动游戏进程,使用触摸,按键,或者时间让场景推进,处理流程,渲染,跳转,更新数据。

Libgdx里面提供的架构为:

Game类 stage类 和actor类。

Game来进行切换场景,stage类用于呈现,以及处理消息,actor为stage上的演员,负责表现,变化自己的行为,显示,从而进行整个游戏的推行。


 

如此操作后,可以生成apk到手机上进行看效果了。


 



0 0