日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
Android游戲引擎libgdx使用教程1:搭建libgdx環(huán)境

libgdx是一個(gè)跨平臺(tái)的2D/3D的游戲開(kāi)發(fā)框架,它基于Apache License, Version 2.0協(xié)議,由Java/C/C++語(yǔ)言編寫(xiě)而成,其代碼托管于Google Code中,對(duì)商業(yè)使用和非商業(yè)使用均免費(fèi)。

目前創(chuàng)新互聯(lián)已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計(jì)、和田縣網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶(hù)導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶(hù)和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

開(kāi)源的游戲框架并不少見(jiàn),但是libgdx的優(yōu)勢(shì)是相當(dāng)明顯的,主要是體現(xiàn)在以下幾個(gè)方面:

1、極強(qiáng)的兼容性

libgdx兼容大多數(shù)微機(jī)平臺(tái)(標(biāo)準(zhǔn)JavaSE實(shí)現(xiàn),能運(yùn)行在Mac、Linux、Windows等系統(tǒng))與Android平臺(tái)(Android1.5以上即可使用,Android2.1以上可滿(mǎn)功率發(fā)揮)。

2、高效性

Libgdx主要是用Java寫(xiě)的,其中也參雜了一些C/C++代碼,這些代碼是為了處理一些對(duì)性能要求很高的操作,比如物理引擎或者音頻處理。作為用 戶(hù),你只需要關(guān)注Java端就可以了,它已經(jīng)把所有的本地代碼封裝好了。相比于其他android游戲引擎,libgdx的效率優(yōu)勢(shì)十分明顯。

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

libgdx的logo:

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

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

新建一個(gè)Android項(xiàng)目,F(xiàn)ile -> New -> Project -> Android Project。我選的SDK是1.6的,最低選擇應(yīng)該是1.5。

新建一個(gè)文件夾libs(這個(gè)名字是固定的,不能隨意改),將下載到的jar復(fù)制進(jìn)去,android平臺(tái)只需要復(fù)制gdx.jar和gdx-backend-android.jar。

增加引用,然后將armeabi和armeabi-v7a兩個(gè)文件夾復(fù)制到libs文件夾中。

然后寫(xiě)個(gè)小程序測(cè)試一下環(huán)境有沒(méi)有問(wèn)題。

新建類(lèi)HelloGameActivity,繼承AndroidApplication類(lèi)。

 
 
 
 
  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);就是啟動(dòng)游戲的關(guān)鍵,F(xiàn)irstGame是一個(gè)實(shí)現(xiàn)了ApplicationListener的類(lèi)。代碼如下:

 
 
 
 
  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(); //實(shí)例化     
  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. }   

因?yàn)闆](méi)有寫(xiě)實(shí)際的東西,所以效果是一個(gè)黑黑的框。

libgdx環(huán)境搭建就說(shuō)到這里。

注意:如果仔細(xì)觀察Logcat, 就會(huì)發(fā)現(xiàn)一個(gè)error:E/libEGL(382): couldn't load library (Cannot load library: load_library[984]: Library 'libhgl.so' not found)。
這個(gè)沒(méi)什么關(guān)系,這是系統(tǒng)嘗試加載硬件OpenGL驅(qū)動(dòng)失敗了,然后回到軟件的處理方法上,不是缺陷或者錯(cuò)誤。


文章標(biāo)題:Android游戲引擎libgdx使用教程1:搭建libgdx環(huán)境
本文網(wǎng)址:http://www.dlmjj.cn/article/cdsjsoo.html