代码世界 2012-01-09
新建一个Android项目,File -> New -> Project -> Android Project。我选的SDK是1.6的,最低选择应该是1.5.
新建一个文件夹libs(这个名字是固定的,不能随意改),将下载到的jar复制进去,android平台只需要复制gdx.jar和gdx-backend-android.jar。
增加引用,然后将armeabi和armeabi-v7a两个文件夹复制到libs文件夹中。
然后写个小东西测试一下环境有没有问题。风之境地
新建类HelloGameActivity,继承AndroidApplication类。
packagecom.cnblogs.htynkn;
importcom.badlogic.gdx.backends.android.AndroidApplication;
importandroid.os.Bundle;
publicclassHelloGameActivityextendsAndroidApplication{
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
initialize(newFirstGame(),false);
}
}
initialize(newFirstGame(),false);
就是启动游戏的关键,FirstGame是一个实现了ApplicationListener的类。
代码如下
packagecom.cnblogs.htynkn;
importcom.badlogic.gdx.ApplicationListener;
importcom.badlogic.gdx.Gdx;
importcom.badlogic.gdx.graphics.GL10;
importcom.badlogic.gdx.graphics.g2d.SpriteBatch;
publicclassFirstGameimplementsApplicationListener{
//绘图用的SpriteBatch
privateSpriteBatchbatch;
@Override
publicvoidcreate(){
batch=newSpriteBatch();//实例化
}
@Override
publicvoiddispose(){
//TODOAuto-generatedmethodstub
}
@Override
publicvoidpause(){
//TODOAuto-generatedmethodstub
}
@Override
publicvoidrender(){
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);//清屏
batch.begin();
batch.end();
}
@Override
publicvoidresize(intwidth,intheight){
//TODOAuto-generatedmethodstub
}
@Override
publicvoidresume(){
//TODOAuto-generatedmethodstub
}
}
环境搭建就说到这里,下一篇是关于图片绘制的。
注意:
如果仔细观察Logcat,就会发现一个error:
E/libEGL(382):couldn'tload<libhgl.so>library(Cannotloadlibrary:load_library[984]:Library'libhgl.so'notfound)
这个没什么关系,这是系统尝试加载硬件OpenGL驱动失败了,然后回到软件的处理方法上,不是缺陷或者错误。