Lua游戏脚本开发之初始化Lua

Lua游戏脚本开发之初始化Lua是本文要介绍的内容,主要是来学习LUA的使用和LUA中关于游戏的开发,具体内容的实现来看本文详解。

我最近学习游戏脚本编程。接触到的第一个脚本编程语言就是Lua。我使用的Lua版本是5.1。

遗憾的是,我学习脚本编程的那本书中使用的版本是老版本的Lua,由于Lua在新版本中,对很多函数调用作了改变,我发现根据书中的介绍,很难成功地编译程序。经过自己的研究,终于可以正常地使用Lua提供的基本功能了。所以我把我的解决方法写出,和大家分享,希望对其他使用新版本Lua遇到麻烦的朋友有所帮助。

下载安装好Lua后,就可以使用了。我使用Visual Studio .NET 2003的C++编译器开发应用Lua脚本的Host应用程序。首先,我们要设置编译器,让它能够找到使用Lua必须的头文件和库文件。方法如下:

1、启动Visual Studio .NET 2003。

2、选择“工具”-〉“选项”菜单,打开“选项”对话框。

3、在右边的选项中,选择“项目”,然后选择其下的“VC++目录”。

4、在对话框右边的“显示以下内容的目录”下拉框中选择“包含文件”。然后添加Lua的包含目录,在我的电脑中目录是“C:/Program Files/Lua/5.1/Include”。

5、在对话框右边的“显示以下内容的目录”下拉框中选择“库文件”。然后添加Lua使用的库文件所在目录,我的是“C:/Program Files/Lua/5.1/Lib”。

6、点击“确定”,关闭对话框。

现在,编译器已经设置完毕。我们就以一个Console控制台程序来演示Lua的初始化:

1、创建一个C++控制台项目。

2、选择“项目”-〉“属性”菜单,打开项目的属性对话框,然后选择“连接器”下面的“命令行”选项,然后在右下角区域输入使用的库文件lua51.lib和lua5.1.lib。然后点击“确定”。

3、为了使用Lua中的函数,我们需要在程序的源代码文件中包含Lua的头文件——lua.h和lauxlib.h。因为Lua使用纯C代码编写,所以我们要用下面的方式来包含这两个头文件到我们的C++程序中:

extern "C"  


{  


include "lua.h"  


include "lauxlib.h" // 必须包含这个头文件,否则无法调用lua_open()函数  


} 

要使用Lua,首先要对它初始化。初始化一个Lua,个人的理解,其实就是初始化一个Lua使用的堆栈,主程序和游戏脚本通过这个堆栈互相通讯。我们只要在主程序的Main()函数中调用如下代码即可初始化一个Lua堆栈:

int _tmain(int argc, _TCHAR* argv[])  


{  


 // 初始化一个Lua state并设置堆栈尺寸是1024  



 lua_State* pLuaState = lua_open(1024);  



return 0;  


} 

使用完Lua后,应该调用如下代码释放掉Lua对象:

lua_close(pLuaState); 

完整的程序如下:

相关推荐