android 遊戲導引(1. 建立 OpenGL 項目)

來源:互聯網
上載者:User

android 遊戲導引(1. 建立 OpenGL 項目)Table of Contents

  • 1 搭建環境
  • 2 建立一個 android 項目
  • 3 建立 OpenGL 程式架構
1 搭建環境

我的環境是 mac, 鑒於 windows 下搭建的教程網上很多,大家可以 google 之。說一下 mac 下的環境搭建過程。

  1. 下載 mac 版本的 android SDK。天朝牆很堅固,貼下 2.3 ,可以用超強盜鏈功能的迅雷下載。

    Platform Package Size MD5 Checksum
    Mac OS X (intel) android-sdk_r08-mac_86.zip 28797617 bytes d2e392c4e4680cbf2dfd6dbf82b662c7
    Linux (i386) android-sdk_r08-linux_86.tgz 26817291 bytes 3b626645b223d137d27beefbda0c94bc
  2. 解壓檔案。點擊 tool 目錄下的 android 檔案。選擇要下載的相應版本的 SDK, 文檔,工具等。

  3. android 要求 jdk 版本大於 1.5, mac os x上預裝的是 1.6 的版本。(java -version查看)。所以不必再下 jdk 了(想下官網也沒提供mac版本)。

  4. 下載 Eclipse, 版本是 for Java Developers 的就可以。解壓到某個檔案夾下,直接運行其中的eclipse 就使用。

  5. 安裝 adt。 Eclipse 的 Help菜單下的 Install new Software…. 點擊 add 按鈕, 在彈出的對話方塊 Location 中,輸入 http://dl-ssl.google.com/android/eclipse/, OK, 省略。。。

  6. 配置 Eclipse 的android 環境。重啟 Eclipse, 點擊Eclipse 菜單下的 Preferences, 開啟設定介面。找到android 項, 設定好 android sdk 目錄,點 apply, 會顯示你所有的 sdk 版本。OK。

  7. 建立一個 avd。 開啟 Eclipse 的 Windows 菜單下的 "Android SDK and AVD",建立好一個 avd。就正式配置成功了。

      2 建立一個 android 項目

"File" -> "New"-> "Project": 選擇 android 工程:

設定好項目的資訊和sdk版本:

好了一個項目就建立完了。

3 建立 OpenGL 程式架構

預設的,建立的程式中,一個 activity 的源碼如下: 

 

public class GlGame extends Activity {    /** Called when the activity is first created. */     @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);    }}

 

 

OpenGL 有自己的Surface: GLSurfaceView, 它內部提供了一個 Renderer 介面,我們所要做的就是註冊一個自己的 Renderer。好了,先看我們的 activity:

 

import android.app.Activity;import android.opengl.GLSurfaceView;import android.opengl.GLSurfaceView.Renderer;import android.os.Bundle; public class GlGame extends Activity {    /** Called when the activity is first created. */     @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        // setContentView(R.layout.main);        Renderer render = new MyRenderer();//要實現的 Renderer        GLSurfaceView glView = new GLSurfaceView(this);        glView.setRenderer(render);        setContentView(glView);            }}

 

Renderer 必須要實現3個抽象方法:

  • public void onDrawFrame(GL10 gl) 繪製
  • public void onSurfaceChanged(GL10 gl, int width, int height) 視窗大小改變
  • public void onSurfaceCreated(GL10 gl, EGLConfig config) 視窗建立

添加類 MyRenderer:

 

import javax.microedition.khronos.egl.EGLConfig;import javax.microedition.khronos.opengles.GL10; import android.opengl.GLSurfaceView.Renderer; public class MyRenderer implements Renderer{     public void onDrawFrame(GL10 gl) {        gl.glClearColor(1, 0, 0, 0);        // 清除螢幕和深度緩衝        gl.glClear(GL10.GL_COLOR_BUFFER_BIT) | GL10.GL_DEPTH_BUFFER_BIT);    }     public void onSurfaceChanged(GL10 gl, int width, int height) {        // 設定 OpenGL 情境的大小        gl.glViewport(0, 0, width, height);         }     public void onSurfaceCreated(GL10 gl, EGLConfig config) {        // TODO Auto-generated method stub            } }

 

好了一個 OpenGL 架構就搭好了。接下來我們就進行可愛地螢幕繪製相關地東西了。下次再說吧。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.