首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

腾讯UnLua脚本插件正式开源

UnLua是Unreal Engine 4下特性丰富且高度优化的Lua脚本插件。它遵循Unreal Engine 4的编程模式,简单易上手,UE4程序员更是可以零学习成本使用。UnLua目前已经被应用在大量的大型项目中。

适用场景

使用Lua编写游戏逻辑。

使用Lua替换线上系统原有的蓝图(Blueprint)逻辑。

主要特性

零胶水代码访问引擎反射体系内的所有UCLASS、 UPROPERTY、 UFUNCTION、 USTRUCT、UENUM。

零辅助代码覆写(Override)所有'BlueprintEvent' (包括所有用'BlueprintImplementableEvent'或'BlueprintNativeEvent'标记的UFUNCTION和所有蓝图中定义的Event/Function)、 Replication Notify、 Animation Notify、 Input Event。

完备的静态导出方案,用于导出引擎反射系统之外的类(成员函数、成员变量)、全局函数、枚举。

高度优化的UFUNCTION调用,包括持久化参数缓存、优化的参数传递、优化的非常量引用和返回值处理。

高效的基础容器(TArray、TSet、TMap)访问,内存布局与引擎一致,无需在Lua Table和容器间转换。

高效的结构体创建、访问、GC。

支持自定义的碰撞检测相关枚举。

支持UFUNCTION(带BlueprintCallable或Exec标签)默认参数。

支持编辑器内Server/Client模拟。

支持Lua协程中执行Latent函数,同步写法完成异步逻辑。

支持根据Blueprint类型自动生成Lua模板代码。

使用示例

创建新蓝图。

新蓝图实现UnLuaInterface接口。

实现GetModuleName函数,返回一个Lua文件路径(相对于Content/Script目录)。

生成Lua模板。

向Lua模板加入逻辑代码。

未来规划

继续完善和优化。

加入测试用例。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190819A061O100?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券