從零開始寫一個武俠冒險遊戲-0-開發框架Codea簡介

從零開始寫一個武俠冒險遊戲-0-開發框架Codea簡介

概述

本遊戲全程使用一款運行於 iPad 上的開發工具類 APP--Codea 來開發, Codea 是一款 輕量級 + 全功能的開發工具, 它既是一個:html

  • 運行時庫-Runtime

也是一個:編程

  • 框架-Frameworks

仍是一個:json

  • 集成開發環境-IDE

更是一個:瀏覽器

  • 調試服務器-debugSever, 可經過瀏覽器來雲端調試代碼.

它仍是 Lua 語言的一種擴展, 本質上它就是一個運行於 iPad 上能夠動態加載運行 Lua 代碼的應用程序.服務器

它實現了一個很是易於使用的編程框架(相似於 ProcessingOpenFrameWorks):網絡

  • setup() 函數, 負責初始化工做, 程序啓動時運行一次;
  • draw() 函數, 負責屏幕繪製, 1秒鐘刷新 60 次;
  • touched(touch) 函數, 負責處理屏幕觸摸;
  • keyboard(key) 函數, 負責處理鍵盤操做;
  • collide(contact) 函數, 負責處理物理模擬中的碰撞檢測;
  • orientationchanged(newOrientation) 函數, 負責檢測屏幕位置(是否翻轉)

用它提供的功能豐富的函數你能夠在 iPad 上編寫各類程序, 它提供了:框架

  • 基本繪圖函數, 實現一些基本的繪圖函數
  • 高級繪圖函數, 支持 OpenGL ES 2.0/3.0, 直接編寫 shader 代碼, 即時查看運行結果;
  • Lua 語言的大多數函數, 如 table相關, string 相關, os 相關, 以及 math 相關的一些函數, 還包括協程 coroutine;
  • Lua 的一些庫, 如 socket, lpeg, json
  • 觸控函數, 負責處理屏幕觸摸事件;
  • 調試函數, 負責處理程序調試工做;
  • 物理模擬函數, 封裝 box2D 提供了相關的物理模擬函數;
  • 動畫函數, 一個專門的動畫類, 能夠利用它來實現各類動畫效果;
  • 聲音函數, 負責處理播放聲音以及生成各類音效;
  • 顯示函數, 負責處理顯示模式設置以及視頻錄製等等
  • 矢量函數, 提供了二維, 三維, 四維向量以及相關的各類操做;
  • 傳感器函數, 負責處理 GPS 定位傳感器和 加速度 傳感器;
  • 網絡函數, 提供了封裝後的 http.request() 函數
  • 存儲函數, 提供了各類存取函數, 用於存取遊戲數據到 iPad 上.

它提供了一個 IDE, 能夠編輯/調試/運行代碼, 很是適合觸屏操做. 也很是適合那些但願能隨時隨地拿起平板就能編程的開發者, 據本軟件開發者 Simen 自述, 最初就是由於他想在平板電腦上隨時運行一些代碼片斷, 因而萌生了這個想法, 結果一步步搞出這麼一個超級方便很受歡迎的 iPad 開發工具來.socket

它能夠把你編寫的代碼導出爲一個 XCode 項目, 而後編譯成一個真正的 APP 發佈到 APP Store, 固然了, 須要你擁有一個開發者帳號.ide

我用過不少 iPad 上的編程工具, 最喜歡的一款是 Codea , 並且爲了更好地發揮它的做用, 專門去認真學了 Lua.函數

接下來咱們會對 Codea 作一個介紹, 讓讀者對咱們後續即將使用的開發工具備一個初步瞭解.

界面

啓動進入

啓動 Codea 後進入主界面, 以下:

輸入圖片說明

示例

Codea 自帶了一些示例程序, 以下:

輸入圖片說明

左側菜單欄

點開左側菜單欄, 出現 4 個選項

輸入圖片說明

內置函數手冊

Codea 中內置了所有的函數說明, 很是方便在編程時隨手查閱

輸入圖片說明

shader實驗室

左側菜單欄的第二項是一個 shader 實驗室, 你能夠在裏面調試本身的 shader 代碼

輸入圖片說明

自帶素材庫

左側菜單欄第三項是 Codea 自帶的素材庫, 有一些能夠無償使用的圖片素材和音樂音效素材, 還有一些 shader模板, 用戶也能夠自行添加素材到素材庫

輸入圖片說明

編輯界面

編輯界面自帶聯想輸入, 很是方便直接在 Codea 上輸入代碼

輸入圖片說明

輸入圖片說明

程序框架說明

--後續補充

主要函數說明

--後續補充

其餘在 iPad 上運行的開發工具

除了 Codea, 還有不少能夠運行在 iPad 上的編程工具, 好比 Processing, TechBASIC 等等, 它們各有所長.

蘋果在最近的 WWDC 上宣佈 iOS 10 會提供一款名爲 Swift Playground 的免費開發工具, 看來隨着平板電腦性能的提高, 用平板編寫代碼已是趨勢所向.

如何使用本教程中的源碼

你有兩種方式來運行本教程的示例, 一種是下載源碼, 直接在 iPad 上經過 Codea 來運行, 另外一種是下載對應的 XCode 項目文件包, 而後在 XCode 中把它編譯爲一個 ipa 應用, 在把它加載到模擬器上運行.

直接在 iPad 上用 Codea 加載代碼

若是你有 iPad, 而且購買了 Codea, 那麼你能夠打開 Codea, 新建一個項目, 把例程代碼拷貝進去, 同時要把例程中用到的圖像資源下載拷貝到 Codea 的素材庫目錄下, 通常是 Documents, 而後就能夠運行了.

這種方法最簡單, 也最方便, 惟一的不便之處是須要預先手動下載保存好圖片素材(不事後續我會寫幾個自動下載保存圖片的函數來提供更方便的使用)

經過 XCode 的 iOS 模擬器來運行

若是你沒有 iPad, 或者雖然有 iPad, 可是暫時還不許備花 15 美圓購買一份 Codea, 那麼你還能夠經過模擬器來運行.

這就須要你有一臺安裝了 XCodeMac 電腦, 或者你有一個安裝了 XCodeOSX 虛擬機, 你只要把每章對應的 XCode 項目文件包下載回去, 而後在 XCode 中打開它, 編譯運行, 就能夠在模擬器中看到運行結果了.

並且你也能夠在 XCode 中修改代碼, 從新編譯查看效果.

參考資源

官網函數手冊
官方wiki
官網論壇
中文函數手冊

相關文章
相關標籤/搜索