# 用户指南 本文介绍 Space Engineers Blueprint Editor 当前界面中已经可用的功能。若你准备从源码构建,请先阅读[开发指南](DEVELOPMENT.md)。 > [!CAUTION] > 在编辑、覆盖或删除蓝图前,请复制整个蓝图文件夹作为备份。建议先退出《Space Engineers》,避免游戏与编辑器同时写入同一文件。 ## 典型工作流 ```mermaid flowchart TD Start["启动应用"] --> Init{"游戏定义是否加载成功?"} Init -->|"否"| Settings["在设置中选择游戏根目录"] Settings --> Restart["重启应用"] Restart --> Init Init -->|"是"| Open["选择、拖放或从列表打开 .sbc"] Open --> Detail["检查详情、DLC、网格和组件"] Detail --> Edit{"是否需要修改?"} Edit -->|"否"| End["结束"] Edit -->|"是"| Backup["备份原蓝图目录"] Backup --> Change["编辑属性或执行批量修改"] Change --> SaveAs["保存到目标 .sbc"] SaveAs --> Verify["在游戏中粘贴并验证副本"] ``` ## 首次启动 应用会按以下方式准备运行环境: 1. 查找《Space Engineers》安装目录并从 `Bin64` 加载游戏程序集。 2. 扫描 `%APPDATA%\SpaceEngineers\Blueprints` 下的蓝图。 3. 在后台读取游戏 `Content` 中的方块、组件、物品、场景和本地化定义。 定义加载期间,部分详情统计和定义浏览页会等待。若出现“加载游戏定义失败”,打开“设置 → 环境 → 游戏根目录”,选择包含 `Bin64` 和 `Content` 的 `SpaceEngineers` 文件夹,然后重启应用。 ## 打开蓝图 可通过三种方式打开 `.sbc`: - 把文件拖到首页或编辑器空白页。 - 在首页选择“打开本地文件”。 - 从导航栏进入本地、云端或工坊蓝图列表,再单击蓝图卡片。 蓝图列表使用以下默认目录: | 列表 | 目录 | 说明 | | --- | --- | --- | | 本地 | `%APPDATA%\SpaceEngineers\Blueprints\local` | 游戏内创建或复制到本地的蓝图 | | 云端 | `%APPDATA%\SpaceEngineers\Blueprints\cloud` | Steam Cloud 同步的蓝图 | | 工坊 | `%APPDATA%\SpaceEngineers\Blueprints\workshop\temp\Steam` | 已下载工坊内容的临时缓存 | 每个子目录通常包含 `bp.sbc` 和 `thumb.png`。缺少 `bp.sbc` 的目录仍会显示,但会带有无蓝图提示。 ### 蓝图列表操作 - 搜索:输入蓝图名称的一部分,匹配不区分大小写。 - 刷新:重新扫描当前三类蓝图目录。 - 在文件夹中打开:打开蓝图所在目录。 - 复制:在同一级目录创建一份完整副本,可修改新目录名。 - 删除:递归删除整个蓝图目录。 > [!WARNING] > “删除”不是移入回收站,应用目前也不提供撤销。云端和工坊内容还可能被 Steam 再次同步或刷新。 ## 查看蓝图详情 详情页会读取第一个船舶蓝图定义,并显示: - 蓝图显示名、所有者 Steam ID、文件大小和文件路径。 - 所有网格的可破坏、可编辑状态。 - 所需 DLC 列表。 - 网格数量、每个网格的名称和方块数量。 - 根据当前游戏定义计算出的组件总量。 组件统计依赖当前安装的游戏定义。游戏版本、DLC 或 Mod 定义与创建蓝图时不一致时,未知方块可能无法计入结果。 ## 编辑蓝图 从详情页选择“在编辑器中打开”,或直接在编辑器页打开/拖入文件。编辑器支持多个标签页;每个标签页持有一份独立的内存中蓝图对象。 ### 浏览模式 | 模式 | 用途 | | --- | --- | | 网格 | 按 CubeGrid 分组列出全部方块,并可按方块名称或自定义名称搜索 | | 方块组 | 按游戏内 Block Group 聚合方块 | | 属性 | 显示整个 `ShipBlueprint` 的可写字段和属性树 | | 三维 | 以方块定义包围盒渲染蓝图,可选择并变换方块 | | 钣金 | 编辑所选方块对应的网格 Skeleton 表面控制点 | 选择方块后,右侧属性树会延迟展开对象。基础值、枚举和部分标志枚举可在对应控件中修改;对象、集合和游戏专用类型主要用于继续浏览。 ### 三维编辑 三维页通过本地 WebGL 2 视图显示全部网格。它使用游戏定义中的尺寸、蓝图方向与颜色绘制方块包围盒,不加载游戏的真实模型或纹理。 常用操作: - 左键单击选择方块,左键拖动旋转视角,`Shift` + 拖动平移,滚轮缩放。 - 方向键沿 X/Z 移动,`PageUp` / `PageDown` 沿 Y 移动;工具栏也提供六个方向按钮。 - `R·X`、`R·Y`、`R·Z` 分别绕对应轴旋转 90°。 - `Shift+D` 复制,`Delete` 删除。 - `Ctrl+Z` / `Ctrl+Y` 撤销或重做三维编辑操作。 - `F` 或“适应全部”重新框选整个蓝图。 - 工具栏可保存当前文件或另存为新 `.sbc`。 移动方块时会检查目标最小坐标是否已被占用,删除和移动还会同步更新引用原坐标的方块组。由于多格方块占用范围比一个最小坐标更复杂,仍可能产生重叠;复制会把 `EntityId` 清零并沿 X 轴寻找空的最小坐标。请始终在游戏测试世界验证。 撤销/重做栈只记录三维页中的移动、旋转、复制和删除。属性树、钣金形变和批量转换不会进入这两个栈。 若页面提示 WebGL 2 不可用,请更新显卡驱动和 Microsoft Edge WebView2 Runtime。 ### 钣金形变 钣金页会在左侧列出方块,并在右侧显示所选方块的简化立方体与 14 个表面控制点:8 个角点和 6 个面中心。修改会写入 `CubeGrid.Skeleton` 的原生 Bone 数据。 - 单击控制点进行选择。 - 选择 X、Y 或 Z 轴后拖动控制点,或用三个数值框精确输入偏移。 - 每个轴的偏移限制为 `-1` 到 `1` 个当前网格单元。 - “重置控制点”清零当前点,“重置方块”清除该方块的 14 个表面 Bone。 - 右键拖动旋转预览,滚轮缩放,“重置视图”只恢复相机。 该编辑器处理方块表面的角点和面中心,不是完整的任意网格骨骼编辑器。共享 Bone 可能影响相邻装甲的最终外观,应在游戏中检查接缝。 ### 批量修改 “编辑”菜单当前提供以下操作: | 操作 | 当前行为 | | --- | --- | | 可破坏 / 不可破坏 | 设置所有网格的 `DestructibleBlocks` | | 可编辑 / 不可编辑 | 设置所有网格的 `Editable` | | 小网格 / 大网格 | 设置网格尺寸,并按 `BlockPairName` 尝试替换对应尺寸的方块定义 | | 轻甲 / 重甲 | 根据当前游戏定义替换可识别的装甲方块 | 完成尺寸或装甲转换后,消息会分别给出已转换、已经是目标类型和不支持的方块数量。不支持的方块保持原样。尺寸转换不会重排方块坐标;定义尺寸变化可能导致重叠,因此对复杂蓝图使用后必须在游戏副本中验证。 ### 保存 使用“文件 → 保存”或 `Ctrl+S`。从现有文件打开的蓝图会保存回原路径;三维页工具栏另提供“另存为”。核心层先在目标目录写入唯一临时文件,再通过原子替换写入 `.sbc`。若目标已存在,旧内容保存为同名的 `sbcB5` 备份;若已有备份,会被本次保存的旧版本替换。 建议采用以下保存策略: 1. 首次编辑时先在三维页使用“另存为”,或手动复制整个蓝图目录。 2. 不要把单个自动生成的 `bp.sbcB5` 当作唯一备份。 3. 在游戏中把修改后的蓝图粘贴到测试世界。 4. 确认方块、方向、网格尺寸和终端数据正常后,再替换正式副本。 如果保存失败,请确认目标目录可写、文件没有被游戏或同步程序锁定,并检查应用是否能找到游戏 `Bin64`。 ## 浏览游戏定义 导航栏的“游戏定义”可查看: - 方块(Cubes) - 组件(Components) - 物品(Items) - 场景(Scenarios) 底部搜索框按显示名称筛选定义;右侧搜索框按字段名或字段值筛选当前定义的公开字段。图标会从游戏纹理转换后缓存在应用缓存目录中。 ## 设置 设置页包含以下选项: - 主题:浅色、深色或跟随系统。 - 导航布局:自动、左侧、顶部、紧凑或最小模式。 - 游戏根目录:打开或重新选择《Space Engineers》目录。 - 应用缓存:查看路径和大小,或清空已生成的定义图标等缓存。 - 关于:查看版本和项目链接。 更改游戏根目录后,当前进程已经加载的程序集不会被卸载,建议重启应用。 ## 常见问题 ### 应用找不到游戏 确认所选目录同时包含: ```text SpaceEngineers\ ├─ Bin64\SpaceEngineers.exe ├─ Bin64\VRage.Game.dll ├─ Bin64\Sandbox.Game.dll ├─ Bin64\SpaceEngineers.Game.dll └─ Content\ ``` 你也可以设置 `SPACE_ENGINEERS_ROOT` 或 `SPACE_ENGINEERS_BIN`,详见[开发指南](DEVELOPMENT.md#游戏目录检测)。 ### 蓝图列表为空 - 确认蓝图位于对应默认目录。 - 确认每个蓝图拥有独立子目录,且其中包含 `bp.sbc`。 - 使用列表底部的“刷新”。 - 工坊路径是 Steam 的临时缓存,未订阅或未下载内容时可以为空。 ### 蓝图没有缩略图 应用优先读取同目录的 `thumb.png`;不存在时会显示默认占位图,不影响 `.sbc` 读取。 ### 详情或定义页一直加载 通常是游戏定义初始化失败。检查游戏路径、游戏文件完整性和应用错误提示;若游戏刚更新,重新构建应用并清空定义图标缓存。 ### 修改后的蓝图不能在游戏中使用 恢复备份,并重点检查: - 是否把大网格标记用于只存在小网格定义的方块,或反之。 - 蓝图是否引用当前游戏没有的 DLC、Mod 或旧版方块。 - 属性值是否超出游戏接受范围。 - 保存时使用的游戏版本是否与运行游戏一致。 ## 数据安全建议 - 始终在副本上编辑,特别是 Steam Cloud 和工坊缓存。 - 不要把个人蓝图、Steam ID、缓存或游戏 DLL 提交到仓库。 - 不要依赖工坊 `temp` 目录做长期存储。 - 遇到异常时保留原 `.sbc`、`sbcB5` 和可复现步骤,便于排查。