8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

android游戏开发框架libgdx--环境搭建

IT171中文网 管理员组 2013-8-1 1775

android游戏开发框架libgdx的使用(一)--环境搭建
Libgdx是一款支持2D3D游戏开发的游戏类库,兼容大多数微机平台(标准JavaSE实现,能运行在MacLinuxWindows等系统)与Android平台(Android1.5以上即可使用,Android2.1以上可满功率发挥)。
logo
首先下载最新的jar,我下载的是libgdx-0.9.2
附件: 86
新建一个Android项目,File -> New -> Project -> Android Project。我选的SDK1.6的,最低选择应该是1.5.
新建一个文件夹libs(这个名字是固定的,不能随意改),将下载到的jar复制进去,android平台只需要复制gdx.jargdx-backend-android.jar
增加引用,然后将armeabiarmeabi-v7a两个文件夹复制到libs文件夹中。

附件: 87
然后写个小东西测试一下环境有没有问题。
新建类HelloGameActivity,继承AndroidApplication类。


package com.cnblogs.htynkn;
import com.badlogic.gdx.backends.android.AndroidApplication;

import android.os.Bundle;

public class HelloGameActivity extends AndroidApplication {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
initialize(new FirstGame(), false);
}
}


initialize(new FirstGame(), false);
就是启动游戏的关键,FirstGame是一个实现了ApplicationListener的类。
代码如下


package com.cnblogs.htynkn;

import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL10;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;

public class FirstGame implements ApplicationListener {
//绘图用的SpriteBatch
private SpriteBatch batch;
@Override
public void create() {
batch = new SpriteBatch(); //实例化
}

@Override
public void dispose() {
// TODO Auto-generated method stub

}

@Override
public void pause() {
// TODO Auto-generated method stub

}

@Override
public void render() {
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); //清屏
batch.begin();
batch.end();
}

@Override
public void resize(int width, int height) {
// TODO Auto-generated method stub

}

@Override
public void resume() {
// TODO Auto-generated method stub

}

}
因为没有写实际的东西,所以效果是一个黑黑的框。

附件: 88
环境搭建就说到这里,下一篇是关于图片绘制的。
注意:
如果仔细观察Logcat,就会发现一个error
E/libEGL(382): couldn't load <libhgl.so> library (Cannot load library: load_library[984]: Library 'libhgl.so' not found)
这个没什么关系,这是系统尝试加载硬件OpenGL驱动失败了,然后回到软件的处理方法上,不是缺陷或者错误。

上传的附件:
最新回复 (34)
全部楼主
返回
发新帖
我也是有底线哒~