news 2026/5/11 9:37:17

Lua的加载与管理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Lua的加载与管理

一、前言

本次设计搭建了以LuaManager为核心的XLua辅助框架。

该框架聚焦基础且关键的功能:

通过分层缓存机制整理Lua相关资源

自定义Loader打通Lua与C#的脚本查找通道

明确Lua与C#的双向调用步骤,同时针对性解决异步加载的时序问题。

二、 LuaManager

①缓存Lua文件名

②缓存Lua脚本信息

③缓存LuaEnv 在Awake里初始化

④定义Loader 这里的Loader就是在Lua调用require("脚本名")的时候,从C#的Loader这个方法来查找脚本并返回

Loader里的查找写法:

通过脚本名寻找脚本的相对路径,通过这个相对路径去查找缓存的Lua脚本信息里有没有这个脚本,然后返回这个脚本转的二进制,或者返回空

⑤缓存Lua脚本信息

通过解析bundle文件的时候,把lua脚本信息缓存到LuaManager里,备用

三、Lua方法的调用

①Lua自己调用:LuaEnv.Dostring(string.Format('{0}'),name)

②C#来调用Lua的方法:使用XLua.LuaFunction func = LuaEnv.Globe.Get<XLua.LuaFunction>("Lua脚本名"); 然后func.Call()即可

四、Lua脚本的加载与调用

Lua脚本加载是异步的,如果我下一行就来调用,那怎么确保加载好了?

①判断是否加载完毕:当Lua脚本信息的Count大于或等于Lua文件名的Count的时候就是加载完毕

②如何实现在加载完毕后来调用:定义委托,注册监听,当判断为加载完毕的时候才调用

五、总结

基础的Lua脚本调用 就在这了,欢迎交流评论

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/11 9:37:15

3404开源:黄大年茶思屋榜文保姆级全落地解法「34期 3题」分类/检测/分割通用模型库高效评估融合学习范式双路径工程落地全解

华夏之光永存・开源:黄大年茶思屋榜文保姆级全落地解法「34期 4题」 小标题:分类/检测/分割通用模型库高效评估融合学习范式双路径工程落地全解 一、摘要 面向预训练模型库评估与多模型融合领域,当前单模型微调择优、零散参数融合、独立任务定制范式已抵达全球工程实践性…

作者头像 李华
网站建设 2026/5/11 9:35:44

如何不依赖Steam客户端下载创意工坊模组:WorkshopDL完全指南

如何不依赖Steam客户端下载创意工坊模组&#xff1a;WorkshopDL完全指南 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 还在为Epic、GOG等平台购买的游戏无法访问Steam创意工坊…

作者头像 李华
网站建设 2026/5/11 9:32:21

WarcraftHelper 终极指南:让魔兽争霸3在现代电脑上完美运行

WarcraftHelper 终极指南&#xff1a;让魔兽争霸3在现代电脑上完美运行 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为魔兽争霸3这款经典RTS游…

作者头像 李华
网站建设 2026/5/11 9:25:57

FastAPI新手快速入门

一、认识FastAPI1.什么是apiapi接口其实就是应用程序器对外提供操作数据的入口&#xff0c;这个入口可以是函数、方法或者url接口当客户端调用入口&#xff0c;应用程序会执行对应代码操作&#xff0c;完成相对应的功能&#xff08;应用服务器只负责对外提供统一API&#xff0c…

作者头像 李华