在 C# 中使用 Lua(摘要)
2006-05-17 16:02
239 查看
原文地址: http://www.gamedev.net/reference/articles/article2275.asp
这篇文章用一个简单的控制台程序范例讲述了如何在 C# 中使用 Lua.
首先,我们添加一个 LuaInterface (开源的类库)的引用,并在类中创建一个 Lua 虚拟机对象示例。
1. 起步
傻瓜式的,从控制台直接读取 lua 代码,交给虚拟机去执行。
pLuaVM.DoString(strInput);
2. 暴露一些自定义的函数给 lua 虚拟机,运行时供调用执行。
用 Lua.RegisterFunction(Name, Target, Method)
(参数类型分别是:string, 类的实例, MethodInfo)
3. 将注册过程自动化。
创建一个标签类 AttrLuaFunc,用于给函数添加标签。然后利用 .NET 的发射特性,在程序初始化的最后阶段,枚举当前对象的所有方法,注册所有具有该特性的函数到 Lua 虚拟机中。并在全局的一个 hashtable 中保存其方法名、参数等信息。
一些参考:
----------------------------------------------
Lua 官方网站: http://www.lua.org/
一个不错的教程:
http://lua-users.org/wiki/TutorialDirectory
Lua 5.0 参考手册(中文)
http://www.nirvanastudio.org/wp-content/uploads/2006/04/lua-5_0-reference-manual.html
Lua.NET
http://www.lua.inf.puc-rio.br/luanet/
Blogs about Lua:
http://blog.dreambrook.com/soloist/
这篇文章用一个简单的控制台程序范例讲述了如何在 C# 中使用 Lua.
首先,我们添加一个 LuaInterface (开源的类库)的引用,并在类中创建一个 Lua 虚拟机对象示例。
1. 起步
傻瓜式的,从控制台直接读取 lua 代码,交给虚拟机去执行。
pLuaVM.DoString(strInput);
2. 暴露一些自定义的函数给 lua 虚拟机,运行时供调用执行。
用 Lua.RegisterFunction(Name, Target, Method)
(参数类型分别是:string, 类的实例, MethodInfo)
3. 将注册过程自动化。
创建一个标签类 AttrLuaFunc,用于给函数添加标签。然后利用 .NET 的发射特性,在程序初始化的最后阶段,枚举当前对象的所有方法,注册所有具有该特性的函数到 Lua 虚拟机中。并在全局的一个 hashtable 中保存其方法名、参数等信息。
一些参考:
----------------------------------------------
Lua 官方网站: http://www.lua.org/
一个不错的教程:
http://lua-users.org/wiki/TutorialDirectory
Lua 5.0 参考手册(中文)
http://www.nirvanastudio.org/wp-content/uploads/2006/04/lua-5_0-reference-manual.html
Lua.NET
http://www.lua.inf.puc-rio.br/luanet/
Blogs about Lua:
http://blog.dreambrook.com/soloist/
相关文章推荐
- 在 C# 中使用 Lua(摘要)
- Unity使用C#通过自定义Loader加载指定目录的Lua脚本
- Tolua使用笔记六:在lua中操作C#的委托事件与在lua中对Unity的GameObject的操作
- Xlua使用C#中第三方库:DoTween
- Redis进阶实践之八Lua的Cjson在Linux下安装、使用和用C#调用Lua脚本
- 在VS中 使用C#访问Lua
- Lua 中使用C#的类
- C#中使用LuaInterface
- ulua中lua代码使用反射调用c#详解
- Tolua使用笔记五:lua中遍历访问c#的Dictionary类对象与枚举类型
- Lua_ uLua_C#中使用Lua_016
- Tolua使用笔记五:lua中遍历访问c#的Dictionary类对象与枚举类型
- 使用 Flash 和 C# WinForm 配合打造界面漂亮的应用程序(摘要)
- C#中使用LuaInterface笔记
- 在C#中使用Lua代码或lua文件
- Lua的系统学习(杂)_在VS中使用Lua_将C#方法注册进入Lua并执行的操作步骤
- 使用 Flash 和 C# WinForm 配合打造界面漂亮的应用程序(摘要)
- Lua_ uLua_C#中使用Lua_016
- BOLT.NET中的关于数据库链接和使用的LUA与C#语言的交互设计
- Unity中XLua开发之使用C#加载lua脚本