【发布时间】:2023-02-25 06:36:46
【问题描述】:
我开始关注this教程,了解如何在 bevy 中制作游戏。代码编译正常,但仍然很慢(老实说我不确定这是否正常,大约需要 8 秒),但是当我启动游戏时,窗口变白(Not Responding)几秒钟(大约与编译时间相同的时间,可能稍微少一点)在正确加载之前。
这是我的Cargo.toml:
[package]
name = "rustship"
version = "0.1.0"
edition = "2021"
[dependencies]
bevy = "0.8.1"
# Enable a small amount of optimization in debug mode
[profile.dev]
opt-level = 1
# Enable high optimizations for dependencies (incl. Bevy), but not for our code:
[profile.dev.package."*"]
opt-level = 3
[workspace]
resolver = "2"
我在使用和不使用工作区解析器的情况下都进行了尝试。我的 rustup 工具链是nightly-x86_64-pc-windows-gnu,我正在使用rust-lld链接程序:
[target.nightly-x86_64-pc-windows-gnu]
linker = "rust-lld.exe"
rustflags = ["-Zshare-generics=n"]
根据 official bevy setup guide 这样应该更快。我尝试过使用 rust-lld 和不使用它,但它似乎没有任何改变。
这是 cargo run 的输出(A_NUMBER 是一个 4 位数字):
AdapterInfo { name: "NVIDIA GeForce RTX 3090", vendor: A_NUMBER, device: A_NUMBER, device_type: DiscreteGpu, backend: Vulkan }
关于如何改进编译时间并直接加载窗口的任何想法?我的游戏一点都不重。现在,我只是加载一个精灵。教程中的人使用 MacOS,这对他来说似乎相当快。
【问题讨论】:
-
我看到您没有像设置指南中提到的那样为 bevy 启用
"dynamic"功能以加快编译速度。根据我的经验,这是最有影响力的变化。 -
在同一页面上,它表示
"dynamic"功能在 Windows 上尚不可用。
标签: rust compiler-optimization rust-cargo bevy