ToLua 使用教程 下

本文介绍如何在Unity中使用Lua语言实现脚本功能,包括修改游戏对象名称、添加脚本组件及调用自定义脚本方法。通过具体实例,展示了Lua与Unity API的交互过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上节课程我们讲解了如何安装Unity 接下来用lua实现unity的功能

 

由于unity中 api特多 我就写一些简单的举例说明

首先我们在场景中创建个Cube然后修改tag为“Player”

  1. 然后利用lua修改其名字

执行测试

利用lua已经把cube的名字修改

FindGameObjectWithTag返回的就是GameObject该物体所以能直接.name 把name修改

 

心得:因为lua的方法没有提示,所以好多api我们只能通过查看wrap文件注册的api

如:UnityEngine.GameObject.FindGameObjectWithTag("Player")

这行代码的FindGameObjectWithTag方法在lua中很容易敲错,所以可以查看wrap文件找到并拷贝过来。

 

 

2.给Cube添加一个脚本,我刚刚写的RotateSelf的那个脚本

C#写法: gameObject. AddComponent<RotateSelf>();

Lua无法用泛型

所以上面的无法让lua用

C# 有个重载; gameObject. AddComponent (typeof(RotateSelf));

然后lua中就

根据第二个重载方法添加该脚本。

测试结果:

Cube就有了之前写的那个脚本了。

注意:lua中用c#的方法  静态方法用“.”非静态方法用“:”

3.利用lua执行我们自己写的脚本的方法

 RotateSelf里面的Rotate方法完善

然后重新wrap

其实这个方法名没有变 参数没有变 就可以不wrap还是可以直接使用

Lua代码

因为Rotate方法是非静态所以是用“:”

执行结果

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值