成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Lua在游戲開發中應用教程

移動開發 iOS 游戲開發
Lua在游戲開發中應用是本文要介紹的內容,主要是來了解并學習lua中游戲的開發,具體內容的實現,來看本文詳解。

Lua游戲開發中應用是本文要介紹的內容,主要是來了解并學習lua游戲的開發,具體內容的實現,來看本文詳解。

前些日子一直忙于開發BigTank項目(下載地址參見劣質設計網站:http://www.buaa-mstc.com,不支持IE),總結了一些Lua在C#項目中的應用方法。

Lua 是一個小巧的腳本語言。作者是巴西人。該語言的設計目的是為了嵌入應用程序中,從而為應用程序提供靈活的擴展和定制功能。它的主頁是 www.lua.org。
Lua腳本可以很容易的被C/C++代碼調用,也可以反過來調用C/C++的函數,這使得Lua在應用程序中可以被廣泛應用。不僅僅作為擴展腳本,也可以作為普通的配置文件,代替XML,Ini等文件格式,并且更容易理解和維護。

在C#中使用Lua也十分簡單。

  1. LuaInterface is a library for integration between the Lua language and Microsoft   
  2. .NET platform’s Common Language Runtime (CLR). Lua scripts can use it to instantiate CLR objects,   
  3. access properties, call methods, and even handle events with Lua functions. 

從LuaInterface網站上可以下載到這個庫。在你的項目中引用LuaInterface.dll后就可以開始了。

BigTank項目還沒有確定是否要開源,所以我拿自己寫的電子寵物程序演示一下(它也用了Lua,你可以在實驗室頁面找到它的全部源代碼)。

  1. C#:  
  2.  
  3. //...  
  4. /// <summary> 
  5. /// Lua虛擬機  
  6. /// </summary> 
  7. private static Lua luaVM = null;  
  8.    
  9. /// <summary> 
  10. /// 寵物的構造函數  
  11. /// </summary> 
  12. public Pet(PetForm _petForm, string _petName, string _petPath)  
  13. {  
  14.     petState = new PetState();  
  15.     petForm = _petForm;  
  16.     petName = _petName;  
  17.    
  18.     //構造Lua虛擬機以解析寵物AI  
  19.     luaVM = new Lua();  
  20.     //注冊提供給寵物AI的API函數  
  21.     Type tThis = this.GetType();  
  22.     luaVM.RegisterFunction("PetDo", this, tThis.GetMethod("LuaPetDo"));  
  23.     luaVM.RegisterFunction("PetDoFrame", this, tThis.GetMethod("LuaPetDoFrame"));  
  24.     luaVM.RegisterFunction("Sleep", this, tThis.GetMethod("LuaSleep"));  
  25.     //載入AI文件  
  26.     luaVM.DoFile(System.AppDomain.CurrentDomain.BaseDirectory + _petPath + "\\ai.lua");  

其中RegisterFunction作用是注冊C#代碼中的一個public(***版本的LuaInterface支持private)函數來供Lua腳本使用,其中無需關心參數的個數以及類型。

  1. Lua:  
  2. PetDo("Sleep"); 

執行DoFile后會調用Lua腳本,后者則調用C#中的PetDo函數完成指定動作。

小結:Lua游戲開發中應用教程的內容介紹完了,希望通過本文的學習能對你有所幫助!

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-08-24 13:27:07

Lua 游戲C接口腳本

2011-08-25 17:01:50

LUA網游游戲

2011-08-24 14:26:08

Lua游戲腳本

2011-07-18 10:53:09

2011-07-18 11:07:12

iPhone 游戲 引擎

2011-07-18 12:29:10

2011-07-18 11:23:29

iPhone 游戲 動畫

2011-07-18 11:39:58

iPhone 游戲 引擎

2011-08-31 17:58:00

VS.netLUA開發環境

2011-08-24 11:14:25

LUA 游戲

2011-08-24 15:22:09

2010-03-08 19:03:23

Python腳本

2012-06-23 20:06:21

jQuery

2011-08-15 13:44:07

iPhone開發UITableView

2014-04-23 13:30:23

類簇iOS開發

2013-12-13 17:33:22

Lua對象管理

2011-08-23 16:37:05

Lua數學庫

2011-07-08 14:58:16

iPhone Xcode iOS

2009-12-29 14:58:31

WPF優點

2014-12-05 11:23:28

docker騰訊云
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 草逼网站| 美女一级毛片 | 欧美成人激情视频 | 国产日韩一区二区 | 国产精品视频播放 | 午夜精品久久久久久久久久久久久 | 仙人掌旅馆在线观看 | 在线黄色影院 | 午夜精品福利视频 | 中文字幕在线剧情 | 亚洲一区在线观看视频 | 成人免费看黄网站在线观看 | 黄色大片免费观看 | 中文字幕精品视频 | www国产成人免费观看视频,深夜成人网 | 97起碰| 一区二区在线不卡 | 亚洲美女网站 | 久久久xx | 日日摸日日碰夜夜爽亚洲精品蜜乳 | 色综合国产 | 青久草视频 | 久久精品视频一区二区 | 日韩成人av在线播放 | 精品日韩一区 | 日韩国产黄色片 | 草草草久久久 | 国产精品久久久久久久久久免费 | 精品亚洲一区二区三区四区五区高 | 色在线免费视频 | 九九色综合 | 中文字幕成人在线 | 九九亚洲| 国产精品毛片 | 成人精品国产免费网站 | 本道综合精品 | 亚洲国产片 | 欧美性猛交一区二区三区精品 | 日韩欧美在线不卡 | 精品一区二区久久久久久久网站 | 孰女乱色一区二区三区 |