1. 程式人生 > 其它 >The Bevy Book - 2.1 設定

The Bevy Book - 2.1 設定

設定

我知道你渴望開始製作遊戲,但我們首先需要做少量的設定。

Rust設定

所有 Bevy 應用程式和引擎程式碼都是用 Rust 編寫的。這意味著在我們開始之前,我們需要設定我們的 Rust 開發環境。

安裝Rust

按照 Rust 入門指南安裝 Rust

完成此操作後,path中就有了rustc編譯器和cargo生成系統。

安裝作業系統依賴項

程式碼編輯器/整合開發環境

您可以使用任何您想要的程式碼編輯器,但我們強烈建議使用具有 Rust Analyzer 外掛的編輯器。Rust Analyzer仍在開發中,但它已經提供了頂級的自動完成和程式碼智慧。

Visual Studio Code 有一個官方支援的 Rust Analyzer Extension

Rust 學習資源

本書的目標是學習 Bevy,因此它不會作為完整的 Rust 教程。如果您想了解有關 Rust 語言的更多資訊,請檢視以下資源:

建立一個新的 Bevy 專案

現在我們準備建立一個Bevy專案!Bevy 只是一個普通的 Rust 依賴項。您可以將其新增到現有的 Rust 專案中,也可以建立一個新專案。為了完整性,我們將假設您從頭開始。

建立一個新的 Rust 可執行專案

首先,切換到要在其中建立新專案的資料夾。然後,執行以下命令以建立一個包含我們的 rust 可執行專案的新資料夾:

cargo new my_bevy_game
cd my_bevy_game

現在使用 cargo run 生成並執行專案。您應該看到 Hello, world! 列印到您的終端。現在開啟 my_bevy_game 資料夾開啟下列檔案。

main.rs是程式的入口點:

fn main() {
    println!("Hello, world!");
}

Cargo.toml是您的“專案檔案”。它包含有關專案的元資料,例如其名稱、依賴項和生成配置。

[package]
name = "my_bevy_game"
version = "0.1.0"
edition = "2021"

[dependencies]

將 Bevy 新增到專案的 Cargo.toml 中

Bevy 在官方 Rust 軟體包儲存庫 crates.io 上作為一個包提供。最新版本號(), 將其新增到 Cargo.toml 檔案中:

[package]
name = "my_bevy_game"
version = "0.1.0"
edition = "2021" # this needs to be 2021, or you need to set "resolver=2"

[dependencies]
bevy = "0.7" # make sure this is the latest version

Cargo工作區

如果您使用的是 Cargo Workspaces,則還需要將解析程式新增到根目錄中的 Cargo.toml 檔案中:

[workspace]
resolver = "2" # Important! wgpu/Bevy needs this!

開啟快速編譯(可選)

在穩定版Rust上,使用預設配置 Bevy 就可以編譯。但是如果想最快編譯,推薦如下配置:

  • 開啟Bevy's Dynamic Linking 特性: This is the most impactful compilation time decrease! If is a dependency you can compile the binary with the "dynamic" feature flag (enables dynamic linking). Note that right now, this doesn't work on Windows.bevy

    cargo run --features bevy/dynamic

    If you don't want to add the to each run, this flag can permanently be set via :--features bevy/dynamicCargo.toml

    [dependencies]
    bevy = { version = "0.7.0", features = ["dynamic"] }

    注意:請記住在釋出遊戲之前還原此內容!否則,如果您希望遊戲執行,則需要將其包含在遊戲旁邊。如果刪除“動態”功能,則遊戲可執行檔案可以獨立執行。libbevy_dylib

  • LLD 連結器:Rust 編譯器在“連結”步驟中花費了大量時間。LLD在連結方面比預設的Rust連結器快得多。要安裝LLD,請在下面找到您的作業系統並執行給定的命令:

    • Ubuntusudo apt-get install lld
    • Archsudo pacman -S lld
    • Windows:確保您擁有最新的cargo-binutils
      cargo install -f cargo-binutils
      rustup component add llvm-tools-preview
    • MacOS:現代LLD還不支援MacOS,但我們可以使用zld代替:brew install michaeleisel/zld/zld
  • Nightly Rust Compiler:這可以訪問最新的效能改進和“不穩定”優化

    在專案的根目錄中,在 旁邊建立一個檔案。rust-toolchain.tomlCargo.toml

    [toolchain]
    channel = "nightly"

    有關更多資訊,請參閱 The rustup book: Overrides

構建 Bevy

現在再次執行。Bevy 依賴項應該開始構建。這將需要一些時間,因為您基本上是從頭開始構建引擎。您只需要進行一次完全重建。在此之後的每個構建都將很快!cargo run

現在我們已經設定了Bevy專案,我們準備開始製作我們的第一個Bevy應用程式!