【LG002.第一章】HelloWorld之環境搭建
關鍵字:LGame 入門 環境搭建
笨木頭花心貢獻,啥?花心?不呢,是用心~
轉載請註明,原文地址:http://blog.csdn.net/musicvs/article/details/7530117
1. 引擎使用的版本LAE1.1
2. Android SDK版本2.1
LAE官方解釋:
2011-11-22 更正了兩處小BUG
2011-11-20 LGame-0.3.2-Update:
1、LGame-0.3.2版延續0.3.1,使用OpenGL作為遊戲渲染核心,早前的AWT與Canvas實現版本現已更名為LSE與LAE(延續0.3)。
2、LGame-0.3.2版極大擴充了LGame核心包功能,新增工具、特效、精靈、介面以數百計(具體細節正在完善文檔中,此處不再詳述)。
3、LGame-0.3.2版在核心包基礎上,新增了STG開發模組,作為遊戲架構的額外補充(目前預設支援(可以基本用指令碼完成)的遊戲類型已含STG、SRPG、AVG,預計0.3.3提供RTS支援)。
4、LGame-0.3.2版的C#(WP7)版已經構建完畢,不久後也將發布。
PS:LSE和LAE包是針對LGame在0.3.1改版前舊版架構的延續,相對0.3.1及0.3.2版使用的OpenGL渲染方式而言,它們繼續採用JavaSE環境所提供的AWT(特指LSE版)以及Android環境所提供的Canvas(特指LAE版)作為遊戲繪圖核心,並且僅在LGame的Java版中出現,其它文法環境下無對應版本提供(比如很快會發布的C#(WP7)版)。
LSE與LAE包與標準LGame包的主要差別有如下幾點:
1、標準LGame自0.3.2起徹底重構了原有的geom包,已經不再附帶OpenJDK中的geom包,但LSE與LAE版繼續使用該包。
2、標準LGame使用GLEx類作為引擎的最基本渲染器,允許使用JavaSE、JavaME的常用繪圖API,以及OpenGL、OpenGLES的常用繪圖API,而LSE與LAE包僅類比有JavaSE、JavaME的Graphics類常用介面(這意味著完全不支援OpenGL)。
3、標準LGame包由於使用OpenGL編程,在不同螢幕手機中進行縮放時,可以較為有效減少甚至消除畫面失真,而LSE與LAE包則難以避免這種現象的產生(特別是大畫面的遊戲,在較小螢幕的手機上運行時)。
4、LSE與LAE版基本不受硬體環境限制,在大多數微機或手機中都能產生較為一致的重新整理速度(當然,這並不意味著沒有浮動,而是指不會出現某些機器上跑幾幀,某些機器上跑數十、數百幀的極端情況),而LGame標準版的速度則受到硬體條件制約,對於某些不支援OpenGL硬體渲染的環境而言(比如ADT模擬器以及部分低端真機),它的速度甚至不如LSE與LAE版。因此從某種情況上講,LSE與LAE版的相容性要超過目前的標準LGame。
5、標準LGame包已經不再支援JavaME遊戲組件的類比,並刪除了相關類。而在LSE與LAE版中,相關類依舊被保留了下來。
6、LSE與LAE版的主體結構雖與標準LGame一致,但輔助類明顯較LGame標準版本為少(缺少幾乎全部工具類以及很多特效類),而各類中提供的API也沒有標準版完整。
也就是說LEA是一個不使用硬體加速的引擎,使用的是Canvas畫布。
本人對OpenGL是99.9%的不懂,因此我選擇學習LEA版本的LGame引擎。
只有兩步:
1. 匯入LAE-1.1Jar包
2. 匯入so庫檔案,so庫檔案有兩種,一種是armeabi檔案夾下的so檔案,一種是armeabi-v7a檔案夾下的so檔案。區別是前者使用與所有Android版本的系統,後者僅支援Android2.2及以上版本的系統,只是前者的檔案比較大,個人按需選擇。
3. 好吧,太術語話了,匯入就理解成複製吧。
OK,環境好了。
囉嗦一下:
記得項目右鍵àBuild PathàConfigure Build PathàAdd JARs,把項目libs檔案夾下的LAE1.1.jar包匯入到項目中(這次真的是匯入了)。
再囉嗦一下:
在AndroidManifest.xml中配置新的Activity時,一定要加入android:configChanges="orientation|keyboardHidden"
屬性,否則遊戲無法強制橫屏或者豎屏。暫時還不知道原因,以後再研究,我們的宗旨是,先學會使用,再探究原理。
源碼(文檔和libs包)下載:http://download.csdn.net/detail/musicvs/4289605
原文第一次發佈於Android-Fans論壇:http://www.android-fans.net/thread-1453-1-1.html