blitzkit 0.8.2

A small 2D and 3D game engine over wgpu: meshes, textures, lighting, shadows, collision, text and sound
Documentation
[package]
name = "blitzkit"
version = "0.8.2"
authors = ["Jake Van Alstyne ☥ <j@jva.lol>"]
edition = "2018"
rust-version = "1.87"
description = "A small 2D and 3D game engine over wgpu: meshes, textures, lighting, shadows, collision, text and sound"
repository = "https://github.com/jvalol/blitzkit"
license = "MIT OR Apache-2.0"
readme = "README.md"
keywords = ["gamedev", "graphics", "wgpu", "3d", "engine"]
categories = ["game-engines", "graphics"]
# the old name's final release lives here; it is not part of this crate.
# media is the readme's screenshots, which it links to by absolute url so they
# render on crates.io too, so shipping half a megabyte of them would be waste.
# site is the product site at blitzkit.jva.lol, a Hugo project with a vendored
# theme: 225 files and most of ten megabytes that nobody depending on this
# crate has any use for.
# What the crate is: the engine. Everything else is the repository around it,
# and a consumer has no use for any of it.
#
# farewell   the old name's final release, not part of this crate
# media      readme screenshots, linked by absolute url so they need not ship
# site       the Hugo site for blitzkit.jva.lol
# netlify.toml  how that site is built, for a directory that does not ship
# shapes     the teapot and the Klein bottle, objects the examples draw
# examples   examples are not the engine, and a consumer cannot run a
#            dependency's examples anyway
# res/textures/checker.png  used by two examples and by nothing in src
# specs      what the engine promises, kept for whoever works on it
# scripts    the copy gate, which guards the readme and the site
# tests      reads the site's markdown, which is excluded
# CLAUDE.md  working notes
exclude = [
    "farewell",
    "media",
    "site",
    "netlify.toml",
    "shapes",
    "examples",
    "res/textures/checker.png",
    "specs",
    "scripts",
    "tests",
    "CLAUDE.md",
    ".git-blame-ignore-revs",
    ".gitignore",
]

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[workspace]
members = ["shapes"]

[dependencies]
winit = "0.30"
glam = { version = "0.33", features = ["bytemuck"] }
tobj = "4"
image = { version = "0.25", default-features = false, features = ["png", "jpeg"] }
env_logger = "0.11"
log = "0.4"
wgpu = "30"
wgpu_text = "30"
pollster = "1"
bytemuck = "1.4"
rodio = { version = "0.22", default-features = false, features = ["playback"] }

[dev-dependencies]
# The named shapes two examples draw. A dev-dependency, so it is not in the
# published dependency graph, which is what makes the cycle legal: it depends
# on this crate in turn.
blitzkit-shapes = { path = "shapes" }
glam = "0.33"