
Godot 打包一次配置交付六端从导出配置到最终签名【免费下载链接】godot-docsGodot Engine official documentation项目地址: https://gitcode.com/GitHub_Trending/go/godot-docs游戏做完了要同时上 Steam、Google Play 和网页第一件事不是点「导出」而是装导出模板。本文按「准备 → 分平台 → 签名 → 瘦身 → 自动化」的工序走一遍 Godot 打包发布全流程。走完同一个项目能交付六端每端附验收标准。 发布前准备模板、预设、资源模式按这个顺序做这一步为了什么把所有配置落进项目目录让任何一台 clone 仓库的机器都能产出同一个包。第一步装导出模板。菜单路径是「编辑器」→「管理导出模板」勾选目标平台后点安装。游戏含中文或 emoji 的话把 ICU Data 一并装上。原因模板是官方按平台编译好的运行时没有它只能导出工程文件产不出可运行的包版本必须和编辑器严格一致。第二步创建第一个导出预设。点编辑器右上角「导出」在面板顶部「添加…」、选平台即可。原因预设写入项目根目录的 export_presets.cfg这是命令行和 CI 读取配置的唯一来源不在项目里机器就接不了手。第三步选资源导出模式。共五档全部资源、选定场景、选定资源、全部除勾选外、专用服务器。默认「全部资源」一般没错工程里有调试页面或废弃场景时换成「全部除勾选外」并勾掉它们。原因模式直接决定包体大小也决定你之后能否只发一个 PCK 做增量更新。顺带记住两个配置文件export_presets.cfg 放 Godot 导出配置的大头可以进版本控制.godot/export_credentials.cfg 放密码和 keystore 路径默认不进库。原因凭据泄露等于签名密钥泄露。更多细节见 官方文档导出项目。; export_presets.cfg编辑器生成无需手写 [preset.0] nameWindows Desktop platformWindows Desktop runnabletrue export_filterall_resources Windows 打包先定架构再决定要不要签名这个平台最容易翻车的一点选了 arm64 架构。产物只能在 Windows on ARM比如骁龙机型上运行你手边的 x86_64 机器直接打不开。所以上传渠道没有 ARM 需求时保持默认 x86_64。关键配置架构默认 x86_64 覆盖绝大多数玩家x86_32 只留给古董系统微软已不再支持 32 位 Windows。PCK 嵌入可选把 data.pck 打进 exe上限约 3.89GB常规游戏碰不到。图标工程图标会自动转成 ICO要控制多分辨率下的清晰度就手工做一个 ICO 替换。签名项支持环境变量覆盖如 GODOT_WINDOWS_CODESIGN_IDENTITY方便 CI 里不硬编码证书路径。导出后 30 秒验证双击 exe 确认主界面能进「关于」信息里版本号对得上再把它放到干净的 Windows 虚拟机里看 Defender 拦不拦——不签名的 exe 误报概率不低这一步能提前暴露问题。完整选项见 Windows 导出文档。 Godot Android 配置从 SDK 到上架级 APK 一次跑通这个平台最容易翻车的一点包名和设备上已装应用相同、签名 key 不同系统拒绝覆盖安装报 INSTALL_FAILED_UPDATE_INCOMPATIBLE。包名是反域名风格商店确认之后改不了所以越早定越好。关键配置SDK4.8 起「项目」菜单有「设置 Android 构建…」、自动下载 OpenJDK 和 Android SDK旧版本要自己在编辑器设置里填 Java SDK 与 Android SDK 两个路径。启动图标主图标至少 192×192、自适应图标至少 432×432低分辨率 Godot 自动生成主体图案放在居中 264px 安全区内否则会被启动器裁掉。商店提交Google Play 自 2021 年起只收 AAB要开 Gradle 构建keystore 必须非调试版且导出时取消勾选「Export With Debug」。导出后 30 秒验证adb install -r 装到设备看图标、名称显示是否正常再跑 adb shell pm list packages 确认包名没串。细节见 Android 导出文档。 Godot Web 导出默认单线程必须配对的只有服务器头这个平台最容易翻车的一点用了多线程导出服务器又没配 COOP/COEP 头浏览器拒绝 SharedArrayBuffer页面一片黑。4.3 起单线程是默认导出方式不需要这些头对不允许跨源隔离的托管平台也更兼容先选它。关键配置渲染方法Web 端只支持 WebGL 2.0工程必须切到 Compatibility 渲染方法Forward 走不了。文件名主文件用 index.html其余导出文件的命名和它绑定改名会加载失败。音频走 Web Audio APIAudioEffect 与混响不可用别把核心反馈压在这些效果上。移动端WASM 比原生代码慢一截低端参数可以用特征标签只在 Web 构建里生效。导出后 30 秒验证F12 打开开发者控制台引擎日志无红色报错主菜单能进、能玩完整一轮。完整清单见 Web 导出文档。 macOS 与 iOS 打包签名链决定商店收不收这两个平台最容易翻车的一点macOS 包没签名用户下载后弹「无法验证开发者」iOS 证书和 Provisioning Profile 对不上真机直接拒装。关键配置macOS预设的代码签名分类里填 Developer ID 身份按需开 entitlements产物是 .app 或 .zip在 macOS 上导出还能直接出 .dmg。iOS预设里填证书与 Profile导出得到 .zip丢进 Xcode 完成签名再提交真机 UDID 必须登记在 Profile 里否则装机失败。证书、Profile 都落在 credentials 文件里不进版本控制。导出后 30 秒验证macOS 包在 Mac 上「显示包内容」看图标和 Info.plist 是否正常iOS 包装到真机在 Xcode 的「设备」列表里确认应用已注册。 Linux 打包最宽松的端但架构别选错这个平台最容易翻车的一点导出 ZIP 包直接发给玩家。引擎有个已知问题二进制不会自动加载 ZIP 包用户那边游戏起不来。Linux 端用默认 PCK 或嵌入更稳。关键配置架构二进制格式分类里选 x86_64 或 arm64和你要覆盖的机型对应。嵌入 PCK单文件分发用户双击即玩不用解释目录结构。分发惯例tar.xz 打包启动脚本记得给可执行权限。导出后 30 秒验证终端里运行 ./game.x86_64看首帧加载和版本号顺带确认没有把相对路径打在屏幕上。 Godot 代码签名与脚本加密什么必须签、什么可以先跳用决策逻辑代替逐平台重复必须签Android 正式版Play 拒收未签名包、iOS商店硬性要求、macOS不签有 Gatekeeper 警告、Windows不强制但不签名的 exe 在 Defender 下误报率高签名后明显下降。可以先跳调试包、开发机自测、Linux 桌面端——最后者配一份 SHA256 校验和就够玩家验证完整性。第二层是脚本加密。在预设里开加密选项密钥走 GODOT_SCRIPT_ENCRYPTION_KEY 环境变量注入不写进预设。原理导出后的 PCK 里 GDScript 不可读。代价引擎启动时要拿密钥解密密钥丢了历史包全部失效必须异地备份。签名凭据统一放 .godot/export_credentials.cfgCI 里用 GODOT_ 前缀环境变量注入如 GODOT_ANDROID_KEYSTORE_RELEASE_PASSWORD密码就不落代码库。 包体瘦身四个能看见数字的操作编译自定义导出模板引擎本体是最大头把用不到的模块如语音合成裁掉模板普遍小三分之一到一半Web 端的 WASM 文件减得最明显。纹理压缩按平台勾对桌面走 S3TC、移动端走 ETC2/ASTC预设里的 VRAM 压缩选项按平台分开勾。格式选错要么白占体积要么目标平台直接黑屏。资源模式改「全部除勾选外」勾掉调试页与废弃场景每勾一项PCK 少对应字节的体积。Android 裁剪架构模板只保留 arm64_v8aAPK 里多余 ABI 文件夹整个消失通常省 30–50MB。⚙️ 让机器替你打包一条命令替代手动点五下预设进项目后手点的「导出」就可以换成一条命令godot --path /path/to/project --export-release Windows Desktop build/win/game.exe注意一个细节输出路径相对项目目录解析不相对终端当前位置这是最容易踩的坑。同一条命令换个预设名就是别的平台。最小可用的 CI 长这样任何流水线工具都能套steps: - run: git pull - run: prepare-godot --output tools/ # 把 Godot headless 放到 tools/ - run: | tools/godot --headless --path . --export-release Windows Desktop build/win/game.exe tools/godot --headless --path . --export-release Web build/web/index.html - run: tar czf build.tar.gz build/为什么是这种形态CI 机器没有图形界面headless 命令是唯一路径签名凭据在流水线启动前以环境变量注入不写进 YAML。 翻车急救五个高频故障的修法现象导出对话框报「未安装导出模板」。大概率原因对应平台模板没装或版本不匹配。修复「编辑器」→「管理导出模板」补装该平台确认模板版本号和编辑器版本号一致重开编辑器再导出。现象Android 安装报 INSTALL_FAILED_UPDATE_INCOMPATIBLE。大概率原因设备上有同包名、不同签名 key 的旧应用。修复先卸载设备上的旧应用重新导出安装正式版 keystore 一旦生成永不更换换了旧用户就升级不了。现象Web 黑屏控制台提示 SharedArrayBuffer 相关错误。大概率原因多线程导出但服务器缺跨源隔离头。修复预设切到单线程导出重新打包或者在服务器配置里补 COOP/COEP 两个响应头两种方案都要在真实托管环境验证一次。现象Windows exe 被 Defender 隔离。大概率原因未签名且签名信誉低。修复配好代码签名证书并在导出时启用签名过渡期先上 Steam 或 itch借平台白名单降低误报临时告知玩家手动放行。现象导出包明显大于工程体积。大概率原因「全部资源」把调试资源和未用场景一起打包了。修复模式改「全部除勾选外」勾掉测试内容确认对应平台的纹理压缩已启用重新导出对比体积。 速查表六端产物、签名与最常踩的坑平台产物格式签名要求最常踩的坑Windows.exe可选嵌入 PCK强烈建议降低误报arm64 exe 跑不了 x86_64 机器macOS.app / .zip / .dmg必须Developer ID不签名用户看到「无法验证开发者」Linux无扩展名二进制惯例 .x86_64不需要校验和即可ZIP 包不被自动加载需启动脚本Android.apk / .aab必须非调试 keystore同包名不同 key 无法覆盖安装iOS.zip交 Xcode 打开必须证书 Profile真机不在 Profile 内装机失败Web.html .js / .wasm不需要多线程模式缺 COOP/COEP 头现在打开编辑器先到「编辑器 → 管理导出模板」确认目标平台的模板已装再点「导出」添加第一个预设选依赖最少的那个平台打一包。它通过了 30 秒验证剩下五端的工序就已经立住了。【免费下载链接】godot-docsGodot Engine official documentation项目地址: https://gitcode.com/GitHub_Trending/go/godot-docs创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考