rusting_engine 1.4.0

Vulkan 3D game engine with GPU-accelerated physics for massive physics-heavy scenes
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "rusting_engine"
version = "1.4.0"
authors = ["Vasyl Trefilov <drenfor228@gmail.com>"]
build = false
exclude = [
    "testModels/*",
    "AGENTS.md",
    "plan.md",
    "benchmark/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Vulkan 3D game engine with GPU-accelerated physics for massive physics-heavy scenes"
homepage = "https://github.com/GoingRusting/RustingEngine"
documentation = "https://docs.rs/rusting_engine"
readme = "README.md"
keywords = [
    "vulkan",
    "gpu-physics",
    "game-engine",
    "3d",
    "gamedev",
]
categories = [
    "rendering",
    "game-engines",
]
license-file = "LICENSE.md"
repository = "https://github.com/GoingRusting/RustingEngine"

[features]
default = [
    "editor",
    "gltf",
]
editor = [
    "ui",
    "gltf",
    "dep:rfd",
    "dep:vulkano-util",
]
experimental-gpu-physics = []
gltf = ["dep:gltf"]
gpu-tests = []
ui = [
    "window",
    "dep:egui",
    "dep:egui-winit",
]
validation = []
window = ["dep:vulkano-util"]

[lib]
name = "rusting_engine"
path = "src/lib.rs"

[[bin]]
name = "cook_scene"
path = "src/bin/cook_scene.rs"

[[bin]]
name = "editor"
path = "src/bin/editor.rs"
required-features = ["editor"]

[[bin]]
name = "game"
path = "src/bin/game.rs"
required-features = ["window"]

[[bin]]
name = "rusting"
path = "src/bin/rusting.rs"

[[bin]]
name = "user_main"
path = "src/user_main.rs"
required-features = ["window"]

[[example]]
name = "gltf_test"
path = "src/examples/gltf_test.rs"
required-features = ["gltf"]

[[example]]
name = "hybrid_10k"
path = "src/examples/hybrid_10k.rs"
required-features = ["ui"]

[[example]]
name = "native_texture"
path = "src/examples/native_texture.rs"
required-features = ["window"]

[[example]]
name = "physics_bench"
path = "src/examples/physics_bench.rs"
required-features = ["window"]

[[example]]
name = "render_bench"
path = "src/examples/render_bench.rs"

[[test]]
name = "cli"
path = "tests/cli.rs"

[[test]]
name = "starter_game"
path = "tests/starter_game.rs"

[[test]]
name = "vertical_slice_environment"
path = "tests/vertical_slice_environment.rs"

[dependencies.bevy_ecs]
version = "0.19.1"
features = [
    "multi_threaded",
    "debug",
    "serialize",
]

[dependencies.bincode]
version = "1.3.3"

[dependencies.bytemuck]
version = "1.25.0"

[dependencies.egui]
version = "0.31.1"
optional = true

[dependencies.egui-winit]
version = "0.31.1"
features = [
    "clipboard",
    "wayland",
    "x11",
]
optional = true
default-features = false

[dependencies.gltf]
version = "1.4.1"
features = ["KHR_lights_punctual"]
optional = true

[dependencies.image]
version = "0.25.10"
features = [
    "png",
    "jpeg",
    "bmp",
    "tga",
]
default-features = false

[dependencies.nalgebra]
version = "0.34.2"

[dependencies.rand]
version = "0.10.0"

[dependencies.rayon]
version = "1.10"

[dependencies.rfd]
version = "0.17.2"
optional = true

[dependencies.rusting-core]
version = "0.1.0"

[dependencies.serde]
version = "1.0.228"
features = ["derive"]

[dependencies.serde_json]
version = "1.0.149"

[dependencies.smallvec]
version = "1.15.1"

[dependencies.uuid]
version = "1.25.0"
features = [
    "serde",
    "v4",
]

[dependencies.vulkano]
version = "0.35.2"

[dependencies.vulkano-shaders]
version = "0.35.0"

[dependencies.vulkano-util]
version = "0.35.0"
optional = true

[dependencies.winit]
version = "0.30.12"
features = ["serde"]

[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
panic = "abort"