搜索你想找的开源项目

输入名称、用途或关键词,也可粘贴 GitHub 仓库链接

分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

oceanpacificpeace/lichii-shader-sync

游戏

把共享的 Vulkan 着色器缓存下载并安装进 Lichii/Eden 模拟器,减少游戏首次运行时的卡顿。

109
5
Go
今天创建

项目介绍

Lichii Shader Sync 用于把共享的 Vulkan 着色器缓存包下载并安装到 Lichii 或 Eden 这两个 Nintendo Switch 模拟器中。它解决的是模拟器首次运行游戏时需要现场编译着色器、导致早期卡顿的问题。

缓存包以 Release 形式发布,并附带按游戏区分的清单;README 中的徽章显示《时之笛》的缓存包含 88,982 个着色器。同步时会校验并验证每个下载内容,旧缓存保留为 .bak 文件。工具还提供从本地 cache.bin 打包并发布缓存包的命令。

快速使用

  1. 在 Lichii 中先运行一次游戏,然后完全关闭 Lichii。
  2. 从最新 Release下载程序并运行 Lichii-Shader-Sync.exe。Windows SmartScreen 可能拦截,README 要求选择 More info → Run anyway。
  3. 点击 Update shaders,再启动 Lichii。

命令行等价方式是 lichii-sync sync,加 -dry-run 可先预览将要下载的内容。项目用 Go 编写,README 徽章注明 Go 1.15+。

特定构建的注意事项

  • 在 117 及之后的构建中,请在 nx2_switches.txt 里保持 EDEN_NX2_PRELOAD_ALL_PIPELINES 关闭。这些构建会在大约 2.5 分钟后逐出未使用的管线,此时预加载大缓存包会让游戏卡住约 20 秒。
  • 更新 GPU 驱动后,README 建议做一次可选预热:把 GPU 着色器缓存调到 10 GB 或 Unlimited,开启预加载,启动游戏并在标题画面等到编译完成,退出后关闭预加载。Linux 上通过 .bashrc 中的 __GL_SHADER_DISK_CACHE、__GL_SHADER_DISK_CACHE_SIZE 和 __GL_SHADER_DISK_CACHE_PATH 设置。

发布缓存包

lichii-sync pack 命令把本地 cache.bin 拆分为分块文件并生成清单:lichii-sync pack -title <TITLEID> [-prev <TITLEID>.json] <cache.bin> out/ <TITLEID>-<date>。要先上传分块再上传清单;缓存包的 Release 不能标记为 Latest,否则 README 的下载按钮会指向缓存包而不是程序本身。

使用约束

  • 仅面向 Lichii 和 Eden,不是通用着色器缓存工具。
  • Windows 图形界面流程分发的是未签名的预编译 .exe,需要用户绕过 SmartScreen 警告;Linux 部分只给出环境变量调整,没有 GUI 操作说明。
  • 仓库未声明许可证,且项目为非官方,与 Lichii、Eden 没有隶属关系。

HotRepo 点评

该项目在 2026-11-08 出现在 HotRepo 的 Go 新项目列表中,约 12 小时内新增 100 Star 和 5 Fork,但没有记录到 GitHub 日榜名次。这只是单次快照观察,不能说明持续采用情况。技术上值得留意的是缓存包与清单分离的发布方式,以及 117+ 构建逐出管线、使大包预加载适得其反的说明;对准备使用的读者来说,只提供二进制、不说明源码对应关系是主要风险点。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。