安装
本页面为自动翻译,可能包含错误。如果发现问题,请通过“编辑此页面”链接帮助修正。
下载二进制发行版(推荐)
无需构建步骤——下载 SDK,将其添加到 PATH,然后开始制作游戏。
要求: Zig 0.16.0 必须在您的 PATH 中。无需其他任何东西——不需要 C 编译器、系统 SDK 或额外的依赖项。
→ [下载最新发行版]({{< param releases >}})
Linux / macOS
tar xf turian-sdk-linux-x86_64-v0.1.0.tar.gz
export PATH="$PWD/turian-sdk-linux-x86_64-v0.1.0:$PATH"
Windows (PowerShell)
Expand-Archive turian-sdk-windows-x86_64-v0.1.0.zip
$env:Path += ";$PWD\turian-sdk-windows-x86_64-v0.1.0"
解压到任何位置——不会写入您的系统。该软件包是完全可重定位的。
平台支持
| 平台 | Studio | CLI | 构建窗口化游戏 |
|---|---|---|---|
| linux-x86_64 | ✓ | ✓ | ✓ |
| windows-x86_64 | ✓ | ✓ | ✓ |
| macos-aarch64 | — | ✓ | 尚不支持 |
macOS SDK 仅提供 CLI;Turian Studio 和 SDL3 尚未包含在内。
Turian SDK
一个可移植、自包含的软件包。它包括引擎和编辑器的 Zig 源码、所有依赖项、CLI 工具,以及(在桌面平台上)工作室和 SDL3 库。您可以直接用它构建游戏,无需检出引擎仓库。
为什么 Zig 不捆绑在内
Zig 没有稳定的 ABI,因此引擎不能作为预编译库发布——您的游戏需要与引擎源码一起编译。SDK 提供了这些源码;您需要自己提供编译器。(唯一的例外是 SDL3,它是一个 C 库,以预编译形式在 lib/ 中提供。)
SDK 目录结构
turian-sdk-<platform>-v<version>/
turian-cli[.exe] 无头构建工具
turian-studio[.exe] GUI 编辑器(仅限桌面平台)
turian-sdk.json SDK 标记(CLI 用于路径解析)
engine/ 引擎 Zig 源码 + 供应商 C 代码(cgltf、stb)
editor/ 编辑器 Zig 源码
deps/
math3d/src/ 数学库
guid/src/ UUID 库
serde/src/ 序列化库
open_asset_package/src/ .oap 读写器
lib/
libSDL3.a SDL3 静态库(仅限桌面平台)
多 SDK 版本共存
每个发行版解压到自己的 turian-sdk-<platform>-v<version>/ 文件夹中,它们可以自由共存。CLI 通过其自身二进制文件旁边的 turian-sdk.json 标记定位引擎源码,因此每个 turian-cli 始终使用自己的同级源码。要选择版本,请将其文件夹添加到 PATH 或通过完整路径调用:
~/sdks/turian-sdk-linux-x86_64-v1.0.0/turian-cli build mygame # 1.0.0
~/sdks/turian-sdk-linux-x86_64-v1.1.0/turian-cli build mygame # 1.1.0
创建并构建游戏
turian-cli new-project mygame # 搭建项目
turian-cli build mygame # 编译为独立游戏
mygame/.cache/zig-out/bin/game # 运行
turian-cli build:
- 扫描
mygame/assets/中的用户脚本(@component文件)。 - 将所有资源打包为
mygame/.cache/game.oap。 - 在
mygame/.cache/中生成build.zig+main.zig,并使用 Zig 编译。 - 生成
mygame/.cache/zig-out/bin/game[.exe]及game.oap。
生成的可执行文件是自包含的:它从自身目录下的 game.oap 中读取所有资源,不需要引擎源码树。
环境变量覆盖
覆盖 CLI 自动解析的路径(对 CI 或多版本设置很有用)。环境变量优先于 SDK 相对路径,而 SDK 相对路径又优先于构建时烘焙的路径(仅存在于树内开发构建中)。
| 变量 | 覆盖路径 |
|---|---|
TURIAN_ENGINE_ROOT |
engine/root.zig |
TURIAN_EDITOR_ROOT |
editor/root.zig |
TURIAN_BUILD_ROOT |
SDK 根目录 |
TURIAN_MATH3D_ROOT |
deps/math3d/src/root.zig |
TURIAN_GUID_ROOT |
deps/guid/src/root.zig |
TURIAN_OAP_ROOT |
deps/open_asset_package/src/root.zig |
TURIAN_SERDE_ROOT |
deps/serde/src/root.zig |
TURIAN_SDL3_LIB |
lib/libSDL3.a |
TURIAN_CGLTF_WRAP_C |
engine/vendor/cgltf_wrap.c |
TURIAN_VENDOR_INCLUDE |
engine/vendor/ |
从源码构建
从源码构建的内容涵盖在开发章节中。