lua
文章平均质量分 61
cchoop
热爱编程,热爱游戏
展开
-
Lua提示全局变量访问错误
_G:指向全局table设置一下 _G的元表和元方法,通过重写 __newindex和 ___index元方法的方式来做到禁止新建全局变量和访问不存在的全局变量时提示错误。setmetatable( _G, { __newindex = function(_, key) print("attempt to add a new value to global, key: " .. key) end, __index =原创 2022-01-07 17:39:44 · 1080 阅读 · 0 评论 -
XLuaHotFix研究
官网文档1.HotFix配置1、打开该特性添加HOTFIX_ENABLE宏(各个平台)2、执行XLua/Generate Code菜单。3、注入,构建手机包这个步骤会在构建时自动进行,编辑器下开发补丁需要手动执行"XLua/Hotfix Inject In Editor"菜单。打印“hotfix inject finish!”或者“had injected!”才算成功,否则会打印错误信息。错误: please install the Tools解决:未找到XLuaHotfixInject.e原创 2021-03-30 21:22:49 · 1083 阅读 · 0 评论 -
XLua性能分析工具
XLua中内置了两个性能分析工具: 函数调用时常分析工具 和 内存泄漏定位工具函数调用时长分析工具典型使用案例:local profiler = require 'perf.profiler'profiler.start()print("xxx")// ...print(profiler.report())profiler.stop()api很简单,就三个,start和stop都是无参数,也很好理解,分别是统计开始以及结束。在start以及stop之间可以多次调用report(也可以考原创 2021-03-27 17:28:12 · 1499 阅读 · 0 评论 -
lua deferred延迟对象
定义:“延迟”对象,游戏中需要异步或者同步操作中不能立即得到结果,需要预定义一个结束的回调函数,等待结果后执行回调接口函数:resolve(callback) reject(callback) catch(callback) finally(callback)使用场景:异步向服务器请求游戏数据,从ab包中动态加载一个预制 等local M = {}local deferred = ...原创 2020-07-19 14:35:29 · 412 阅读 · 0 评论 -
关于LUA+Unity开发_toLua篇【一】
tolua各个实例,Helloworld,介绍了LuaState的生成,DoString以执行文件,Dispose来销毁。注意销毁前调用了CheckTop,用于检测LUA栈中是否还有未执行的指令。ScriptsFromFile, 流程来说,首先生成一个虚拟机,再指定工作路径后,读取LUA文件内容来执行,使用DoFile和Require功能。CallLuaFunction,较xLua来说就提供...转载 2018-11-22 10:34:56 · 1327 阅读 · 0 评论 -
Lua中的模块与module函数详解
这篇文章主要介绍了Lua中的模块与module函数详解,本文讲解了编写一个简单的模块、避免修改模块名的方法、模块名参数等内容,需要的朋友可以参考下很快就要开始介绍Lua里的“面向对象”了,在此之前,我们先来了解一下Lua的模块。1.编写一个简单的模块Lua的模块是什么东西呢?通常我们可以理解为是一个table,这个table里有一些变量、一些函数…等等,这不就是我们所熟悉的类吗?没...转载 2018-12-25 16:01:23 · 1362 阅读 · 0 评论 -
Lua闭包详解
转载地址:https://www.cnblogs.com/zzy-frisrtblog/p/5864209.html**词法定界:**当一个函数内嵌套另一个函数的时候,内函数可以访问外部函数的局部变量,这种特征叫做词法定界table.sort(names,functin (n1,n2) return grades[n1]>grades[n2]end) //内部匿名函数可以...转载 2019-02-20 10:17:10 · 205 阅读 · 0 评论