
如何快速克隆Pyrite64 N64游戏引擎Git LFS与子模块多一步的完整指南【免费下载链接】pyrite64N64 Game-Engine and Editor using libdragon tiny3d项目地址: https://gitcode.com/GitHub_Trending/py/pyrite64Pyrite64 是一款基于 libdragon 与 tiny3d 的N64 游戏引擎与可视化编辑器用于开发可在真机 N64 上运行的 3D 游戏。与一般项目不同的是它的仓库通过Git LFS管理大量二进制资产、通过Git 子模块托管 11 个第三方库所以直接git clone会缺胳膊少腿。本文带你用最短的步骤正确克隆并完整检出这个仓库。为什么 Pyrite64 克隆后总是不完整克隆下来发现两个奇怪现象️ 图片文件只有130 字节左右打开是一段以version https://git-lfs.github.com/spec/v1开头的文本vendored/目录下很多库的文件夹是空的。这不是仓库损坏而是 Git 的两项机制在起作用机制解决的问题在 Pyrite64 中的体现Git LFS仓库体积爆炸图片、音频、模型等大文件只存指针实体存 LFS 服务器Git 子模块第三方库版本漂移vendored/下 11 个依赖库各自锁定独立版本理解了这两点你就明白了多一步的本质普通 clone 只拿到了代码骨架还需要额外拉取 LFS 实体和子模块内容。第一步Git LFS —— 大资产为什么被搬走了N64 平台对资产非常敏感256×256 的大贴图、.blend模型源文件、.wav/.mp3音频、字体文件……这些文件一旦直接提交仓库历史会迅速膨胀到难以克隆。Pyrite64 的 .gitattributes 文件为 8 种扩展名开启了 LFS*.png、*.jpg、*.blend、*.wav、*.mp3、*.ttf、*.mp4、*.webm你可以直接在 n64/examples/jam25/assets/ 目录下看到大量.png贴图、.blend模型和.wav音效——这些正是 LFS 接管的文件类型。没有 LFS示例工程jam25的每次提交都会携带几 MB 的二进制差异。⚠️ 注意Git 客户端如果没安装 git-lfs克隆时只会下载 LFS 指针文件这就是图片只有 130 字节的原因。第二步子模块 —— vendored 目录里的 11 个依赖编辑器端是 C 项目源码位于 src/引擎端面向 N64 硬件源码位于 n64/。为了让依赖版本稳定项目把第三方库以子模块形式锁定在 vendored/ 下完整清单见 .gitmodules子模块作用SDL / SDL_image / SDL_shadercross窗口、图片加载与着色器跨平台编译imgui编辑器即时模式 UItiny3dVulkan 渲染器编辑器 3D 视图的核心libdragonN64 硬件 SDK引擎运行的基石glm数学库向量、矩阵ImGuizmo3D 视图中的变换 Gizmoquickjs-ng节点图的 JS 脚本引擎tiny-regex-c / SHA256正则与哈希工具子模块在父仓库中只记录一个固定 commit 指针普通git clone不会自动检出它们所以目录是空的。一键克隆步骤三行命令搞定以下是最快、最不容易出错的完整流程建议先安装 git-lfs 再克隆1️⃣ 安装 Git LFS 客户端各包管理器搜索git-lfs安装即可git lfs install2️⃣ 克隆仓库并同时递归检出子模块git clone --recurse-submodules https://gitcode.com/GitHub_Trending/py/pyrite643️⃣ 进入仓库验证是否完整cd pyrite64 git submodule status # 前面无 - 号即表示子模块已检出 git lfs ls-files | head # 有输出即表示 LFS 文件已拉取✅ 验证小技巧随便打开一张docs/_static/img/里的图片能正常显示就说明 LFS 实体已经到位。常见问题排查清单症状原因修复命令图片是 130 字节文本克隆时未装 git-lfsgit lfs install git lfs pullvendored/下空目录克隆未带--recurse-submodulesgit submodule update --init --recursive更新后子模块内容没变常规git pull不更新子模块git pull --recurse-submodules构建报缺少依赖头文件子模块检出失败或被跳过重新执行子模块 init并查看 CMakeLists.txt 确认依赖路径总结Git LFS负责把贴图、音频、模型等大文件移出仓库克隆后若看到文本图片补一句git lfs pull即可子模块负责锁定 vendored/ 下 11 个依赖的版本克隆时加上--recurse-submodules一步到位 正确姿势git lfs install→git clone --recurse-submodules→ 构建编辑器之后按 docs/docs/manual/install.rst 和 docs/docs/faq.md 完成 N64 工具链安装即可开始开发。多出来的这一步换来的是可控的仓库体积与可复现的依赖环境——这正是引擎类项目的标准工程实践。【免费下载链接】pyrite64N64 Game-Engine and Editor using libdragon tiny3d项目地址: https://gitcode.com/GitHub_Trending/py/pyrite64创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考