[package]
name = "dirkengine"
default-run = "dirkengine"
description = "A pure Rust Vulkan game engine"
edition.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true
version.workspace = true
homepage.workspace = true
authors.workspace = true
documentation.workspace = true
[dependencies]
anyhow.workspace = true
thiserror.workspace = true
tracing.workspace = true
glam.workspace = true
piquel-log.workspace = true
dirk_threads.workspace = true
dirk_utils.workspace = true
dirk_events.workspace = true
dirk_platform.workspace = true
dirk_renderer.workspace = true
dirk_universe.workspace = true
dirk_world.workspace = true
dirk_assets.workspace = true
dirk_player.workspace = true
[build-dependencies]
dirk_build.workspace = true
[lints]
workspace = true
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["-Zunstable-options", "--cfg", "docsrs"]
[features]
default = ["editor"]
editor = []
[workspace]
resolver = "3"
members = [
"crates/*",
"shaders"
]
[workspace.package]
edition = "2024"
license = "Apache-2.0"
repository = "https://github.com/DirkEngine/DirkEngine"
rust-version = "1.94.0"
version = "0.1.0"
homepage = "https://piquel.fr"
authors = ["Piquel <contact@piquel.fr>"]
documentation = "https://docs.rs/dirkengine"
keywords = ["game", "engine", "gamedev", "graphics", "vulkan"]
categories = ["game-engines", "graphics", "rendering", "vulkan"]
[workspace.dependencies]
time = { version = "0.3", features = ["formatting", "macros"] }
tracing = "0.1"
piquel-log = { version = "0.0.5", features = ["log", "file"] }
parking_lot = "0.12"
tempfile = "3"
slotmap = "1"
thiserror = "2"
anyhow = "1"
cargo_metadata = "0.23"
dirk_build = { version = "0.1.0", path = "crates/dirk_build" }
dirk_threads = { version = "0.1.0", path = "crates/dirk_threads" }
dirk_utils = { version = "0.1.0", path = "crates/dirk_utils" }
dirk_events = { version = "0.1.0", path = "crates/dirk_events" }
dirk_proc = { version = "0.1.0", path = "crates/dirk_proc" }
dirk_platform = { version = "0.1.0", path = "crates/dirk_platform" }
dirk_renderer = { version = "0.1.0", path = "crates/dirk_renderer" }
dirk_assets = { version = "0.1.0", path = "crates/dirk_assets" }
dirk_world = { version = "0.1.0", path = "crates/dirk_world" }
dirk_universe = { version = "0.1.0", path = "crates/dirk_universe" }
dirk_player = { version = "0.1.0", path = "crates/dirk_player" }
dirk_shaders = { version = "0.1.0", path = "shaders" }
winit = "0.31.0-beta.2"
ash = { version = "0.38", features = ["loaded"] }
ash-window = "0.13"
raw-window-handle = "0.6"
glam = "0.32"
gltf = "1"
shaderc = "0.10"
gpu-allocator = { version = "0.28", default-features = false, features = ["std", "vulkan"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
tokio = { version = "1", features = ["full"] }
syn = { version = "2", features = ["full"] }
quote = "1"
pastey = "0.2"
proc-macro2 = "1"
[workspace.lints.rust]
unsafe_code = "forbid"
missing_docs = "warn"
[workspace.lints.clippy]
pedantic = "warn"
unwrap_used = "warn"