maple 0.4.1

A 3D game engine
Documentation
[package]
name = "maple"
version = "0.4.1"
edition = "2024"
repository = "https://github.com/ToothlessBrush/maple"
description = "A 3D game engine"
license = "MIT"
authors = ["ToothlessBrush <johnklein514@gmail.com"]
readme = "README.md"
keywords = ["3d", "game", "engine", "gamedev", "graphics"]
categories = ["game-engines", "graphics"]

include = [
    "res/primitives/**/*",
    "res/shaders/**/*",
    "**/*.rs",
    "cargo.toml"
]

exclude = [
    "res/models/**/*"
]


[lib]
name = "maple"
path = "src/lib.rs"
crate-type = ["cdylib", "rlib"]

[features]
default =  ["3d", "physics", "audio"]
3d = ["dep:maple_3d"]
physics = ["dep:maple_physics"]
audio = ["dep:maple_audio"]
serde = ["maple_engine/serde", "maple_renderer/serde", "maple_app/serde", "maple_3d/serde", "maple_physics/serde"]

[workspace]
members = ["crates/*"]

[workspace.lints.rustdoc]
invalid_codeblock_attributes = "warn"

[dependencies]
# maple
maple_app = {path = "./crates/maple_app", version = "0.4.0"}
maple_renderer = {path = "./crates/maple_renderer", version = "0.4.0"}
maple_engine = {path = "./crates/maple_engine", version = "0.4.0"}
maple_derive = {path = "./crates/maple_derive/", version = "0.4.0"}
maple_3d = {path = "./crates/maple_3d",  version = "0.4.0", optional = true}
maple_physics = {path = "./crates/maple_physics", version = "0.4.0", optional = true}
maple_audio = {path = "./crates/maple_audio", version = "0.4.0", optional = true}
# other
glam = { version = "0.33.2", features = ["glam-assert"] }

[dev-dependencies]
bytemuck = "1.23.2"
maple_egui = { path = "./crates/maple_egui", version = "0.4.0" }
env_logger = "0.11"

[[example]]
name = "bloom"
path = "examples/bloom.rs"
doc-scrape-examples = true

[[example]]
name = "instancing"
path = "examples/instancing.rs"
doc-scrape-examples = true

[[example]]
name = "lighting"
path = "examples/lighting.rs"
doc-scrape-examples = true

[[example]]
name = "mandelbrot"
path = "examples/mandelbrot.rs"
doc-scrape-examples = true

[[example]]
name = "physics"
path = "examples/physics.rs"
doc-scrape-examples = true

[[example]]
name = "player_controller"
path = "examples/player_controller.rs"
doc-scrape-examples = true

[[example]]
name = "simple_scene"
path = "examples/simple_scene.rs"
doc-scrape-examples = true

[[example]]
name = "colliders"
path = "examples/colliders.rs"
doc-scrape-examples = true

[[example]]
name = "egui"
path = "examples/egui.rs"
doc-scrape-examples = true