前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >腾讯UnLua脚本插件正式开源

腾讯UnLua脚本插件正式开源

作者头像
腾讯开源
发布2019-08-20 19:11:16
1.6K0
发布2019-08-20 19:11:16
举报

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模板加入逻辑代码。

未来规划

  • 继续完善和优化。
  • 加入测试用例。

UnLua 正式开源

Github 开源地址:

https://github.com/Tencent/UnLua

(点击文末阅读原文直接访问)

请给 UnLua 一个 Star !

欢迎提出你的 issue 和 PR!

UnLua 国内镜像地址:

https://git.code.tencent.com/Tencent_Open_Source/UnLua

腾讯工蜂源码系统为开源开发者提供完整、最新的腾讯开源项目国内镜像

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯开源 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档