Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android游戲 >> Android游戲開發 >> Android游戲引擎libgdx使用教程1:搭建libgdx環境

Android游戲引擎libgdx使用教程1:搭建libgdx環境

編輯:Android游戲開發

       libgdx是一個跨平台的2D/3D的游戲開發框架,它基於Apache License, Version 2.0協議,由Java/C/C++語言編寫而成,其代碼托管於Google Code中,對商業使用和非商業使用均免費。

       開源的游戲框架並不少見,但是libgdx的優勢是相當明顯的,主要是體現在以下幾個方面:

       1、極強的兼容性

       libgdx兼容大多數微機平台(標准JavaSE實現,能運行在Mac、Linux、Windows等系統)與Android平台(Android1.5以上即可使用,Android2.1以上可滿功率發揮)。

       2、高效性

       Libgdx主要是用Java寫的,其中也參雜了一些C/C++代碼,這些代碼是為了處理一些對性能要求很高的操作,比如物理引擎或者音頻處理。作為用戶,你只需要關注Java端就可以了,它已經把所有的本地代碼封裝好了。相比於其他android游戲引擎,libgdx的效率優勢十分明顯。

       另外,libgdx還具備架構清晰,物理引擎(Box2D)的封裝,擁有豐富的工具等特點。

       libgdx的logo:

libgdx logo

       libgdx的下載地址:http://code.google.com/p/libgdx/。

       首先下載最新的jar,我下載的是libgdx-0.9.2。

libgdx下載

       新建一個Android項目,File -> New -> Project -> Android Project。我選的SDK是1.6的,最低選擇應該是1.5。

       新建一個文件夾libs(這個名字是固定的,不能隨意改),將下載到的jar復制進去,android平台只需要復制gdx.jar和gdx-backend-android.jar。

       增加引用,然後將armeabi和armeabi-v7a兩個文件夾復制到libs文件夾中。

Android游戲引擎libgdx使用教程1:搭建libgdx環境

       然後寫個小程序測試一下環境有沒有問題。

       新建類HelloGameActivity,繼承AndroidApplication類。

Java代碼
  1. package com.cnblogs.htynkn;    
  2. import com.badlogic.gdx.backends.android.AndroidApplication;    
  3. import android.os.Bundle;    
  4. public class HelloGameActivity extends AndroidApplication {    
  5. @Override    
  6. public void onCreate(Bundle savedInstanceState) {    
  7. super.onCreate(savedInstanceState);    
  8. initialize(new FirstGame(), false);    
  9. }    
  10. }  

       initialize(new FirstGame(), false);就是啟動游戲的關鍵,FirstGame是一個實現了ApplicationListener的類。代碼如下:

Java代碼
  1. package com.cnblogs.htynkn;    
  2. import com.badlogic.gdx.ApplicationListener;    
  3. import com.badlogic.gdx.Gdx;    
  4. import com.badlogic.gdx.graphics.GL10;    
  5. import com.badlogic.gdx.graphics.g2d.SpriteBatch;    
  6. public class FirstGame implements ApplicationListener {    
  7. //繪圖用的SpriteBatch    
  8. private SpriteBatch batch;    
  9. @Override    
  10. public void create() {    
  11. batch = new SpriteBatch(); //實例化    
  12. }    
  13. @Override    
  14. public void dispose() {    
  15. // TODO Auto-generated method stub    
  16. }    
  17. @Override    
  18. public void pause() {    
  19. // TODO Auto-generated method stub    
  20. }    
  21. @Override    
  22. public void render() {    
  23. Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); //清屏    
  24. batch.begin();    
  25. batch.end();    
  26. }    
  27. @Override    
  28. public void resize(int width, int height) {    
  29. // TODO Auto-generated method stub    
  30. }    
  31. @Override    
  32. public void resume() {    
  33. // TODO Auto-generated method stub    
  34. }    
  35. }  

       因為沒有寫實際的東西,所以效果是一個黑黑的框。

Android游戲引擎libgdx使用教程1:搭建libgdx環境

       libgdx環境搭建就說到這裡。

       注意:如果仔細觀察Logcat,就會發現一個error:E/libEGL(382): couldn't load <libhgl.so> library (Cannot load library: load_library[984]: Library 'libhgl.so' not found)。
這個沒什麼關系,這是系統嘗試加載硬件OpenGL驅動失敗了,然後回到軟件的處理方法上,不是缺陷或者錯誤。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved