Libgdx是一款支持2D與3D遊戲開發的遊戲類庫,兼容大多數微機平臺(標準JavaSE實現,能運行在Mac、Linux、Windows等系統)與Android平臺(Android1.5以上即可使用,Android2.1以上可滿功率發揮)。
logo:
地址:http://code.google.com/p/libgdx/
首先下載最新的jar,我下載的是libgdx-0.9.2。
新建一個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類。
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; www.aiwalls.com
@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
}
}
因為沒有寫實際的東西,所以效果是一個黑黑的框。
環境搭建就說到這裡,下一篇是關於圖片繪制的。
註意:
如果仔細觀察Logcat,就會發現一個error:
E/libEGL(382): couldn't load <libhgl.so> library (Cannot load library: load_library[984]: Library 'libhgl.so' not found)
這個沒什麼關系,這是系統嘗試加載硬件OpenGL驅動失敗瞭,然後回到軟件的處理方法上,不是缺陷或者錯誤。
作者:htynkn 出處:http://www.cnblogs.com/htynkn/