lua腳本作用
① 如何向一個小學生說明lua腳本在游戲製作里起的作用
小學生的理解能力有限
你用打比方的方法比較好
lua主要的特點是 它是一個膠水語言,功能都由底層來實現,它負責組裝
所以這功能就類似電路板上的電線,將所有電子元件串起來
② Lua的這個腳本語言一般都用來干什麼,有什麼優點
腳本語言有很多種,像是我們常見的Cmd命令也可以算是一種腳本,你說的腳本語言應該是Web應用程序的腳本。 這類的常見的有JavaScript、VBScript、Perl、PHP、Python、Ruby。 腳本語言的特點是語法簡單,一般以文本形式保存,並且不需要編譯成目標...
③ LUA腳本語言在網路游戲編寫中主要是干什麼用的
主要用途是:
(1)描述界面:WOW和劍網三的界面都是用LUA寫的;
(2)溝通引擎:游戲圖形引擎提供了一些介面庫,可以在LUA中調用;
(3)伺服器端:有些游戲,例如劍網三,在伺服器端也會大量使用LUA。
④ redis lua腳本有什麼用
主要用途是: (1)描述界面:WOW和劍網三的界面都是用LUA寫的; (2)溝通引擎:游戲圖形引擎提供了一些介面庫,可以在LUA中調用; (3)伺服器端:有些游戲,例如劍網三,在伺服器端也會大量使用LUA。
⑤ lua腳本語言的概念解釋
Lua 教程
lua
Lua 是一種輕量小巧的腳本語言,用標准C語言編寫並以源代碼形式開放, 其設計目的是為了嵌入應用程序中,從而為應用程序提供靈活的擴展和定製功能。
Lua 是巴西里約熱內盧天主教大學(Pontifical Catholic University of Rio de Janeiro)里的一個研究小組於 1993 年開發的,該小組成員有:Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo。
設計目的
其設計目的是為了嵌入應用程序中,從而為應用程序提供靈活的擴展和定製功能。
Lua 特性
輕量級: 他用標准C語言編寫並以源代碼形式開放,編譯後僅僅一百餘K,可以很方便的嵌入別的程序里。
可擴展: Lua提供了非常易於使用的擴展介面和機制:由宿主語言(通常是C或C++)提供這些功能,Lua可以使用它們,就像是本來就內置的功能一樣。
其它特性:
支持面向過程(procere-oriented)編程和函數式編程(functional programming);
自動內存管理;只提供了一種通用類型的表(table),用它可以實現數組,哈希表,集合,對象;
語言內置模式匹配;閉包(closure);函數也可以看作一個值;提供多線程(協同進程,並非操作系統所支持的線程)支持;
通過閉包和table可以很方便地支持面向對象編程所需要的一些關鍵機制,比如數據抽象,虛函數,繼承和重載等。
Lua 應用場景
游戲開發
獨立應用腳本
Web 應用腳本
擴展和資料庫插件如:MySQL Proxy 和 MySQL WorkBench
安全系統,如入侵檢測系統
第一個 Lua 程序
接下來我們使用 Lua 來輸出"Hello World!"
實例(Lua 5.3)
print("Hello World!")
⑥ 為什麼將lua作為游戲腳本
就我個人的理解來看,使用LUA作為腳本語言有三個好處:
1、輕量級
LUA只包括一個精簡的核心和最基本的庫。這使得LUA體積小、啟動速度快,從而適合嵌入在別的程序里。
2、可配置性、可擴展性
LUA並不象其它許多"大而全"的語言那樣,包括很多功能,比如網路通訊、圖形界面等。但是LUA可以很容易地被擴展:由宿主語言(通常是C或C++)提供這些功能,LUA可以使用它們,就像是本來就內置的功能一樣。
3、兼容性
LUA由標准C編寫而成,幾乎在所有操作系統和平台上都可以編譯,運行。
這些都是LUA本身所具備的一些特質。而這些特質正好就決定了LUA的廣泛使用:
1、輕量級
沒人希望自己的應用程序需要附加幾十M甚至幾百M的庫類文件才能運行。如果一個應用程序這么做了,那麼它很難做到Run Anywhere。當然,這個Run Anywhere只是這么一說。
2、可配置性、可擴展性
在游戲研發的過程中,修改是必不可少的過程。如果每次修改都需要從底層做起,那必定是一個非常繁瑣的過程。而LUA的可配置、擴展正好可以解決這一問題。
3、兼容性
游戲只是游戲,不能決定玩家的機器配置,更不能決定玩家的操作系統。如果因為游戲與用戶的操作系統不兼容導致游戲銷量下降,我想,這肯定是不被允許的。
所以,具備了以上三個特點的LUA,沒有不作為游戲腳本使用的理由。
⑦ Lua 這個腳本語言一般都用來干什麼,有什麼優點
如果你手動下載並且編譯Lua的源碼,你就會發現Lua只是由少數幾個C文件實現,所以它是非常輕量的,只要C能跑的地方,Lua就能跑,而且由於其若類型,那就比C更適合一些任務。
⑧ Lua是什麼編程語言
Lua 是一個小巧的腳本語言。 其設計目的是為了嵌入應用程序中,從而為應用程序提供靈活的擴展和定製功能。Lua由標准C編寫而成,幾乎在所有操作系統和平台上都可以編譯,運行。Lua並沒有提供強大的庫,這是由它的定位決定的。Lua 有一個同時進行的JIT項目,提供在特定平台上的即時編譯功能。
Lua腳本可以很容易的被C/C++代碼調用,也可以反過來調用C/C++的函數,這使得Lua在應用程序中可以被廣泛應用。不僅僅作為擴展腳本,也可以作為普通的配置文件,代替XML,ini等文件格式,並且更容易理解和維護。 Lua由標准C編寫而成,代碼簡潔優美,幾乎在所有操作系統和平台上都可以編譯,運行。一個完整的Lua解釋器不過200k,在目前所有腳本引擎中,Lua的速度是最快的。
⑨ 怎麼使用lua腳本
LUA腳本語言基本使用方法是本文要將介紹的內容,主要是來學習Lua腳本語言的使用方法,具體內容來看本文詳解。
先要把下邊這些語句加入到VC中的頭文件,一般是加到StdAfx.h中
extern "C" { #include "lua.h" #include "lualib.h" #include "lauxlib.h" #pragma comment(lib, "lualib.lib") #pragma comment(lib, "lua.lib") }
然後一般來說都使用一個全局的LUA庫定義的這個東西
lua_State* g_Lua;
並且在工程處初始化時也給LUA初始化
g_Lua = lua_open(); **加這句 /* load Lua base libraries */ 網上一些教材中這么寫的 lua_baselibopen(g_Lua); 不過我這簡單的例子中不用到這些也行 lua_tablibopen(g_Lua); lua_iolibopen(g_Lua); lua_strlibopen(g_Lua); lua_mathlibopen(g_Lua);
緊接著聲明介面函數,注冊上函數
lua_register(g_Lua, "Message", myMessage);
好,初始化部分完了,看看介面函數的寫法。
函數必須這樣的格式來寫
static int Func(lua_State *L) { 靜態型函數,而且必須帶參數為lua_State結構指針 返回的值是代表返回的數據個數,比如return 2;就可以代表 返回兩個整數啊,浮點數什麼的,象LUA的腳本編寫就可以這樣 i, j = Func() , 這樣就表示可以從Func介面函數中得到兩個返回值了 return 0; }
執行腳本語句可以讀文件,也可以直接讀函數名
注冊了
lua_register(g_Lua, "Message", myMessage); static int myMessage(lua_State *L) { OutputDebugString("OK"); return 0; } lua_dofile(g_Lua, strCurPath); //讀文件,必須給出完整的文件路徑名稱 lua_dostring(g_Lua, "Message()"); //直接讀函數
文件中只要寫上
Message()
就可以了。