
Xmake v2.7.3 發布,包組件和 C++ 模組增量構建支援
- 2022 年 11 月 8 日
- 筆記
Xmake 是一个基于 Lua 的轻量级跨平台构建工具。 它非常的轻量,没有任何依赖,因为它内置了 Lua 运行时。 它使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中 …
Continue Reading
Xmake 是一个基于 Lua 的轻量级跨平台构建工具。 它非常的轻量,没有任何依赖,因为它内置了 Lua 运行时。 它使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中 …
Continue ReadingLua调用C++生成的DLL库 本文参考了某大佬的 博客 ,写得十分详细,推荐!!! 需求: 在之前的求解器中添加了Lua库,使得程序可以在Lua脚本中实现自定义函数功能,考虑到未来可能需要与第三方程序库进行耦合计算,现在想到可以借助Lua脚本,在脚本中调用第三方动态库,以实现其功能的扩展。接下来将 …
Continue Reading
概述 在异步操作中,常常要使用回调。但是,回调的嵌套常常会导致逻辑混乱,一步错步步错,难以维护。在Lua中,可以使用协程进行优化。 问题分析 模拟一个回合制游戏攻击过程 local function PlayAnim(anim, cb) print("开始播放 " .. anim) os.execu …
Continue Reading
概述 lua本身没有提供类似C++虚函数机制,调用的父类方法调用虚函数可能会出现问题。 问题分析 分析这段代码和输出 local Gun = {} -- 示例,实际应用还要考虑构造,虚表等情况 function LuaClass(Class, Parent) setmetatable(Class, …
Continue Reading
vivo 互联网服务器团队 - Wang Zhi 一、业务背景 从技术的角度来说,技术方案的选型都是受限于实际的业务场景,都以解决实际业务场景为目标。 在我们的实际业务场景中,需要以游戏的维度收集和上报行为数据,考虑数据的量级,执行尽最大努力交付且允许数据的部分丢弃。 数据上报支持游戏的维度的批量上 …
Continue Reading概述 lua字符串通过操作算法和内存管理,有以下优点: 节省内存。 字符串比较效率高。(比较哈希值) 问题: 相同的字符串共享同一份内存么? 相同的长字符串一定不共享同一份内存么? lua字符串如何管理内存? 数据结构 lua字符串TString typedef struct TString { C …
Continue Reading
Remote File Explorer 是一个跨平台的 远程文件浏览器 ,用户通过Unity Editor就能操作运行在手机上的游戏或是应用的的目录文件。比如当项目打包运行到设备上时,可通过 Remote File Explorer 直接浏览设备上的目录文件,并进行下载,上传,删除等操作。尤其是U …
Continue Reading前面已经支持了几种不同的方式添加断点,但是必须事先在代码中添加断点,在使用上不是那么灵活方便。本文将支持动态增删断点,只需要开一开始引入调试库即可,后续可以在调试过程中动态的添加和删除断点。事不宜迟,我们直接进入正题。 源码已经上传 Github ,欢迎watch/star😘。 本博客已迁移至 Ca …
Continue Reading在前一篇中我们支持了通过函数名称来添加断点,我们同时也提到了在Lua中一个函数的名称的并不是确定的。准确的说,Lua中的函数并没有名称,所谓名称其实是保存这个函数值的变量的名称。 于是通过函数名称添加断点就造成了一定的不确定性,因为函数被调用时并不一定是以这个名字被调用的。另外,多个不同的函数也可能 …
Continue Reading我们之前已经支持了通过函数来添加断点,并且已经支持了行号的检查和自动修正。但是通过函数来添加断点有一些限制,如果在当前的位置无法访问目标函数,那我们就无法对其添加断点。 于是,本篇我们将扩展断点设置的接口,支持通过函数名称添加断点,以突破这个限制。 源码已经上传 Github ,欢迎watch/st …
Continue Reading