編輯: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的下載地址: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類。
Java代碼initialize(new FirstGame(), false);就是啟動游戲的關鍵,FirstGame是一個實現了ApplicationListener的類。代碼如下:
Java代碼因為沒有寫實際的東西,所以效果是一個黑黑的框。
libgdx環境搭建就說到這裡。
注意:如果仔細觀察Logcat,就會發現一個error:E/libEGL(382): couldn't load <libhgl.so> library (Cannot load library: load_library[984]: Library 'libhgl.so' not found)。
這個沒什麼關系,這是系統嘗試加載硬件OpenGL驅動失敗了,然後回到軟件的處理方法上,不是缺陷或者錯誤。
游戲開發與軟件開發多線程的重要性 如果程序主線程被阻塞超過5秒,系統會提示“應用程序無響應” 這就是ANR 。 ANR的全
重力感應主要是依靠手機的加速度傳感器(accelerometer)來實現  
在本次教程中,我們將完成Food這個類的設計。這是游戲相當關鍵的一部分,直接決定了游戲的可擴展性、可玩性。。。 進入正題: 先給大家看下Food
在游戲開發中難免會需要模擬現實情況,一般常見的就是模擬物理世界。 比如物體碰