- 博客(45)
- 收藏
- 关注
原创 今日纸:我用 Tauri + Vue 3 写了一个「打开即写」的桌面日记
打开就能写,不要任何「新建」「命名」的步骤正文自然流淌,不要把普通文字硬塞进卡片待办在正文前面,一眼看到今天要做什么自动保存,不用惦记 Ctrl+S一切存在本地,不上云、不注册、不担心隐私今日纸(Today Paper)。整个项目从构思到可用的 v0.1.3 用了大约0.01个月的业余时间。这篇文章记录它的技术选型、架构设计和一些踩坑经验。
2026-07-03 09:34:40
437
原创 R.E.P.O. Modding Wiki 中文翻译完成 - 让国内 Mod 开发者也能轻松上手
《R.E.P.O. Modding Wiki中文翻译完成》摘要: 恐怖游戏R.E.P.O.的英文Mod开发文档已完成全面中文化,包含26个技术文档的完整翻译,覆盖基础安装指南、HarmonyX/Unity项目搭建、REPOLib API/SDK等核心内容。翻译基于VitePress多语言功能实现,采用结构化目录管理(docs/zh/),支持页面顶部中英切换。项目遵循Boost许可证,已同步至上游最新commit(b4b5384),国内开发者可通过GitHub仓库直接访问或本地运行。该翻译旨在降低中文社区的M
2026-05-31 12:30:00
269
原创 BepInEx 插件开发文档中文翻译 - 项目分享
这篇文档介绍了BepInEx插件框架的中文翻译项目。BepInEx是Unity游戏常用的mod开发框架,作者将v5.4.21版官方文档翻译成中文,包含用户指南、开发教程、API文档等内容。翻译采用Markdown格式,遵循术语统一原则,保留代码块原文仅翻译注释。项目基于LGPL-2.1许可证,中文翻译采用CC BY-SA 4.0协议。文档已发布在GitHub,欢迎开发者使用并提出改进建议,旨在降低Unity mod开发的中文用户入门门槛。
2026-05-30 22:28:37
398
原创 HybridCLR 热更程序集缓存方案:跳过 GenerateAll 直接构建
项目使用 HybridCLR 做热更新,存在多套热更程序集配置。每次更换配置后,需要重新执行才能正确构建 APK,否则运行时会出现脚本丢失。包含编译程序集、生成 MethodBridge.cpp、裁剪 AOT 补充元数据等步骤,执行一次耗时较长。目标是做一个缓存机制:对每套配置只需执行一次,之后更换配置时直接从缓存恢复所有产物,跳过 GenerateAll 直接构建。
2026-05-21 10:48:40
247
原创 告别繁琐!用ApkInfoQuick快速提取APK关键信息
ApkInfoQuick 是一个开源的 Android APK 信息查看工具,支持 GUI 和 CLI 两种使用方式。该工具能快速解析 APK 的包名、版本号、SDK 信息、权限列表、渠道信息等,并支持图标导出和多文件批量处理。采用混合解析策略(aapt+Rust)确保稳定性,特别优化了复杂图标场景的解析能力。项目基于 React+Tauri+Rust 技术栈开发,旨在为 Android 开发、测试和逆向分析提供便捷工具。目前支持 Windows,未来计划完善 AAB 解析和跨平台支持。
2026-04-27 10:56:39
535
原创 我用 Rust 写了一个“压缩包隐写器”,把机密文件藏在图片里!
这篇文章介绍了一个名为"压缩包隐写器"的开源工具,它可以将机密文件加密后隐藏到普通图片中。该工具使用Rust+Tauri开发,具有军工级AES-256-GCM加密、智能分片隐藏、隐蔽性评估等功能,支持GUI和CLI两种操作模式。文章详细说明了工具的开发背景、核心特性、技术栈和使用方法,并提供了GitHub开源地址。作者强调该工具纯本地运行,保障用户隐私安全,同时提醒仅限合法用途。工具适合需要保护敏感数据的用户,开发者也可以参与项目贡献。
2026-04-13 14:40:21
352
原创 Unity中new() 和实例化有什么区别?
unity的实例化是GameObject.Instantiate()这个函数复制某个已存在的GameObject,可能是场景可能是prefab,复制其Transfrom,组件,以及子物体,然后加入到这个场景中。new()本质上是给一个类的实例对象申请分配一块内存,调用这个类的构造函数,然后返回这个对象的引用。new()是C#语言层面上的事情,而实例化是unity引擎的一个api。unity实例化出来的对象则是受unity引擎管理的。new()出来的对象是受到GC机制管理的。二.内存分配上的不同。
2026-03-21 10:51:11
68
原创 关于Unity的Game视图的画布尺寸和Scene视图对不上的问题
主播今天遇到一个问题,当主播的Game视图切换为模拟器时,模拟器竖屏,而Scene视图的画布却是横屏的。按照正常的情况,Game视图是啥尺寸,Scene视图就是啥尺寸才对,此时主播的Game视图和Scene视图是对不上的,这导致我在看Game视图里是竖屏,画面无拉伸,但是调整UI要到Scene视图里调整UI,而Scene视图里画面是拉伸的很不方便。一番模式后发现,在BuildSettings把DefaultOrientaion改成别的什么东西再改回AutoRotaion就可以了。
2026-03-09 11:19:39
76
原创 握鼠标太累了?看看这个键盘模拟鼠标输入的AutoHotkey脚本
新建一个txt文件,将上面的脚本复制进去,然后修改后缀名为ahk,双击就可以运行脚本。
2026-02-26 16:41:40
188
原创 Unity+Vscode+EmmyLua+XLua 调试实战
这个流程要Unity进入播放模式,VScode再开启调试模式,才能识别到断点,这导致比如初始化函数比如Lua侧的Awake,new这些打的断点是有可能无效的,这就是我在上文中提起的原因。这个流程相比于进行CS脚本调试那般,随时进入播放模式,随时进入VScode调试模式是不太方便的,有没有更好的办法?
2026-01-16 11:14:19
692
原创 UnityScrcpy 可以让你在unity面板里玩手机的插件
【UnityScrcpy 一个可以让你在unity里控制手机的插件】 https://www.bilibili.com/video/BV1SkiZBiE9G/?主播一直在用scrcpy控制手机玩手机,然后尝试取得其视频流放到unity的texture里面成功了,然后就写了这个插件。
2026-01-06 16:26:45
304
原创 记录一下如何用tauri打包exe应用
本文记录了使用Tauri将React+Vite项目打包成exe的完整流程。首先通过npm安装依赖并构建项目,生成dist文件夹;然后安装Tauri CLI并初始化配置,注意需将webassets路径改为dist;接着使用tauri dev预览效果;最后通过tauri build打包发行版,期间需注意修改配置文件中的包名参数。整个过程主要涉及npm命令操作和简单的配置调整,适合前端开发者快速实现Web应用桌面化打包。
2025-12-17 18:11:06
709
原创 Lua学习记录 - 自定义模块管理器
为人所知的是lua自带的require函数加载脚本只会加载一次(就像unity里面的资源管理和AB包管理),而主播调试习惯是用Odin插件的Button在unity编辑器模式里调试而非进入播放模式后调试,今天主播在做热更新相关的时候企图多次调用脚本打印以调试功能,而有时候有些模块需要反复加载,因而主播随便写了个模块管理器。不到好不好用,主要是其一键卸载所有模块好用。
2025-08-19 22:43:45
273
原创 Unity中静态成员的生命周期在播放模式和编辑模式的生命周期管理。
为人所知的是,静态成员的生命周期作用域似乎与应用进程同寿(其实是与应用程序域同寿),而大家在UE(UnityEngine)里面玩耍时免不得与代码磕磕碰碰导致其重新编译,这肯定会导致所编译代码块的静态成员的生命周期结束,那么编译完后进入播放模式,回到编辑器模式,这个过程会不会导致静态成员的生命周期结束呢?本文今日便要来见见这个面目。
2025-08-15 23:42:25
515
原创 C#Unity关于单例和对象池使用时可能的报空报错问题
今日在进行人道主义援助的时候发现了我的手足兄弟挚友亲朋在项目中遇到了报空的问题,发生在切换场景之后,在进行了长达12分钟的观察后终于发现了其中关键。原来我的好朋友赵文昌在项目中使用了对象池工厂,在进行unity场景切换后,池工厂中的池还存在原来场景的引用,于是在Get实例的时候就出现了问题,这种情况也属于池的脏问题,所以我们只需要在切换场景或者什么别的时候手动把东西删了就行。下面就通过几个步骤大概来复现一下这个情况。二 复现步骤。
2025-08-13 23:13:24
365
原创 lua里表的操作的学习记录
print("*************表的公共操作****************")print("*************插入****************")print("*************删除****************")print("*************排序****************")print("*************拼接****************")--值得注意的是,嵌套表的作为元素插入到另外一个表的时候,其调用是得仔细观察的。
2025-07-28 23:41:11
339
原创 关于GooglePixel手机网络连接受限的处理办法
事情的起因是,主播今天买了个GooglePixel6手机,到手发现上面全是google应用,联网的时间提示我网络受限,我立刻查了是怎么个事,然后使用adb方法设置了某些东西,然后网络就不提示受限了。谷歌浏览器还能开百度.com,但是进不去网页。我以为是代理的问题,于是我在电脑上下载了小猫咪传给手机,结果发现没有任何变化,于是我又下了个应用宝给它,在应用宝里能看到一堆应用,但是下载应用的进度一直卡在0%,到了这个地步我已经没有办法了,直到我偶然看到了一条评论说是时区的问题。adb方法是看的这个帖子。
2025-07-26 01:19:15
1282
原创 Unity2D中在Tilemap上的物体进行物理运动可能被卡住
主播有一个TileMap平台B,这个B身上挂有TilemapColider2D,有一个rigibody2D的物体A在上面移动,其移动方式对velocity进行水平方向的设置。疑似Tilemap 中的瓦片之间可能存在微小缝隙(即使视觉上无缝),由于unity物理引擎的的计算方式,物体A假装被卡在了缝隙之间。3.把TileMap平台删了换一个带有Colider2D的物体作为平台,A是正常移动的。1.在Update进行了Debug后发现物体A被卡住的时候其线速度不为0。主播今天工作的时候发现了一个诡异的问题。
2025-07-22 17:11:49
356
原创 Lua语言table中有nil时可能会导致的大坑
-谨记,如果表中可能有空洞,那么请谨慎用#获取长度进行遍历。print("键"..k.." 值"..v)--这里怎么又造成了空洞呢,为什么之前没造成空洞。--太好了,ipairs甚至直接读空被打断。--那么我们来使用ipairs遍历如何。--可以见得,这里造成空洞打断了#--lua 5.15和5.4。print('奇怪的#')--太好了,你还敢用吗。
2025-07-22 09:16:36
236
原创 B站快速取关脚本
进入关注页面,打开F12,输入下面这一段代码回车(如果警告什么不能修改之类的,就输入允许粘贴)但是问题比较多,只能说快速取消,不能说一键取消。
2025-03-15 22:46:11
362
原创 Error assigning 2DArray texture to 2D texture property ‘_BaseTex‘: Dimensions must match 报错的一个解决方式
这位大哥一出手便解决了这个问题,只见他直接打开PlayerSetting,找到XR Plugin Management下面的OpenVR的设置,把StereoRendering Mode设置成 MultiPass ,如此一来就没有这个BUG了。事情的起因是,我要做一个SteamVR的项目,在我把VRIF插件跟高清后处理插件导入了项目后,就报错了这个BUG。我尝试把这个脚本禁用了,或者把这一行出差 代码注释了,都会导致Game视图的渲染不正确。搞不懂,琢磨了好久最终在一位神秘的宗师手上得以解决。
2024-10-17 12:02:43
667
原创 SteamVR OpenXR OpenVR都遇到的奇怪问题...
这个报错,其实有三个报错,似乎是设备断开连接的时候发生错误,每次都是重启项目后再次运行就是好的,可以正常的运行的,但是再次运行也就是第二次运行的时候就会发送这样的错误,一直没有头绪。
2024-09-27 10:33:35
627
2
原创 C#为什么不能在拆箱的时候进行强制转换
然而在运行的时候,C#自己知知道obj里面装的是double,当我们把它当做float (float)double直接取出来时,就会发生类型不兼容的异常。object是任何数值的基类,根据里氏替换原则 (float)obj是合法的,编译器不会报错。出于某种需要,比如说使用反射进行数据存储读取的时候,我们需要拆箱,要把它转换为float。会发现直接拆箱的时候报错了,抛出了InvalidCastException 异常。那么我们怎么安全使用呢,相信大家一定有自己的解决方法。我就直接拆箱再转换,就这样。
2024-08-09 14:22:49
261
原创 C#控制台贪吃蛇
系统学习了封装继承多态和面向对象的七大原则,自己试着画了UML图,我靠我玩unity一年半了才画了第一张UML图。早期跟着唐老师写的C#核心实践项目。
2024-08-01 00:33:27
264
原创 关于C#取消转义序列的奇怪问题
也有另外的解决方案,就是遍历其中的斜杠 \ ,使其替换成 \ 就相当于破坏了原本的转义序列,使得原来的转义命令失效。倘若这个 XXX 是一个函数返回值,或者是另外一个字符串变量的值,那么我该如何在输出 str 之前将取消了转义序列的值输出?str=XXX,这个变量从某些地方取得了一串无法预知的字符,这个字符串中可能有意无意含有转义序列。以下这样的写法肯定是错误的,这样写并不能取消 str 里面的转义命令。在字符串前面加入符号 @,就可以把引号中的转义序列无效。str=@“我去这里竟然没有 \a 响铃”;
2024-07-27 14:49:37
437
原创 [解决]UnityAR插件Vuforia10.17.4打包到安卓端后首次运行无异常,二次三次运行初始化引擎失败。
本人学习AR的时候使用Vuforia插件,unity版本2023,Vuforia10.17,打包到了安卓端后首次运行并无异常,二次,三次运行就出现平台配置错误的Vuforia引擎报错,在PlayerSettings里找到ApplicationEntryPoint 取消GameActivity,勾选Activity。一度放弃Vuforia引擎跑去看其他引擎比如easyar,ARfoundation框架。最后在一个奇怪的帖子下找到了解决方法。
2024-05-06 15:27:01
1081
大一做的C++图书管理系统
2024-08-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅