成人免费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 12:29:10

2011-07-18 11:23:29

iPhone 游戲 動畫

2011-07-18 11:39:58

iPhone 游戲 引擎

2011-07-18 10:53:09

2011-07-18 11:07:12

iPhone 游戲 引擎

2011-08-31 17:58:00

VS.netLUA開發環境

2011-08-24 11:14:25

LUA 游戲

2010-03-08 19:03:23

Python腳本

2011-08-15 13:44:07

iPhone開發UITableView

2011-08-24 15:22:09

2012-06-23 20:06:21

jQuery

2009-12-29 14:58:31

WPF優點

2014-04-23 13:30:23

類簇iOS開發

2013-12-13 17:33:22

Lua對象管理

2019-04-09 15:02:36

OpenResty騰訊游戲營銷技術

2011-08-23 16:37:05

Lua數學庫

2011-07-08 14:58:16

iPhone Xcode iOS
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人欧美一区二区三区色青冈 | 超碰在线人人干 | 亚洲一一在线 | 一区二区视频在线观看 | 中文字幕在线第二页 | 伊人青青久久 | 免费国产成人av | 国产欧美精品一区二区色综合 | 国产精品免费看 | 毛片综合| 91社区在线观看 | 国内精品在线视频 | 亚洲美女一区二区三区 | 国产成人精品久久二区二区91 | 免费成人高清在线视频 | 超碰免费在线 | 狠狠骚| 成人精品鲁一区一区二区 | 91人人看 | 久久久久久国产精品 | 一区二区免费在线 | 黄频免费| 午夜激情视频在线 | 欧美视频偷拍 | 久久av.com| 999久久久精品| a免费视频| 久草视频观看 | 波波电影院一区二区三区 | 91视频在线 | 国产色婷婷精品综合在线手机播放 | 亚洲97| 免费a国产 | 国产精品视频免费观看 | 国产欧美在线一区二区 | 国产日韩欧美电影 | h在线播放| 美女艹b| 中文字幕在线免费观看 | 在线久草 | 日韩欧美在线精品 |