This checkout had no git history at all, so this one commit carries the whole
of the Everwood work as a single import on top of chairmanpow/benilla-octo's
`main` (706cd71). The two trees have genuinely diverged — each has files the
other does not — so this is a fork point, not a catch-up.
Today's work, which is the reason a baseline exists at all:
- Booth previews no longer cast world shadows (`NO_BOOTH_SHADOW`). Portrait
characters were entering the sun's shadow cascades, so every skinned-rig
shadow specialization compiled live mid-frame; the hitch detector logged
"main thread blocked 1316 ms" beside a `compiled LIVE` warning. This was
the Fashion/Tmog stutter.
- Per-pane dress-up: each `DressUpModel` pane assembles and stages its own
tried-on look instead of every pane mirroring the live player.
- Item template cache is append-only JSONL written on the IO pool, replacing
an 11.6 MB whole-map JSON rewrite on the main thread every 10 s.
- `WOW_SYSTEM_TIMING` rebuilt per-thread: it took 2 mutexes per system enter
and 4 per exit, costing 15 ms a frame (590 fps -> 60) and corrupting the
measurements it was taken to produce.
- The visibility-churn sweep moved to its own `WOW_FLASH_CHURN` switch, so a
frame-cost reading no longer pays 2.7 ms a frame for it.
Local state (`benilla-config/`, `logs/`, `target/`) is excluded by the
existing .gitignore; the account credential it holds is not in this commit.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SgstFWtn1RxEJ5kVrpgYwn
183 lines
3.0 KiB
TOML
183 lines
3.0 KiB
TOML
# 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 = "2024"
|
|
name = "kira"
|
|
version = "0.12.1"
|
|
authors = ["Andrew Minnich <aminnich3@gmail.com>"]
|
|
build = false
|
|
autolib = false
|
|
autobins = false
|
|
autoexamples = false
|
|
autotests = false
|
|
autobenches = false
|
|
description = "Expressive audio library for games"
|
|
readme = "README.md"
|
|
keywords = [
|
|
"gamedev",
|
|
"audio",
|
|
"music",
|
|
]
|
|
categories = [
|
|
"game-development",
|
|
"multimedia::audio",
|
|
]
|
|
license = "MIT OR Apache-2.0"
|
|
repository = "https://github.com/tesselode/kira"
|
|
resolver = "2"
|
|
|
|
[package.metadata.docs.rs]
|
|
all-features = true
|
|
rustdoc-args = [
|
|
"--cfg",
|
|
"docsrs",
|
|
]
|
|
|
|
[features]
|
|
aac = [
|
|
"symphonia",
|
|
"symphonia/aac",
|
|
]
|
|
adpcm = [
|
|
"symphonia",
|
|
"symphonia/adpcm",
|
|
]
|
|
aiff = [
|
|
"symphonia",
|
|
"symphonia/aiff",
|
|
]
|
|
alac = [
|
|
"symphonia",
|
|
"symphonia/alac",
|
|
]
|
|
caf = [
|
|
"symphonia",
|
|
"symphonia/caf",
|
|
]
|
|
default = [
|
|
"cpal",
|
|
"mp3",
|
|
"ogg",
|
|
"vorbis",
|
|
"flac",
|
|
"wav",
|
|
"pcm",
|
|
]
|
|
flac = [
|
|
"symphonia",
|
|
"symphonia/flac",
|
|
]
|
|
isomp4 = [
|
|
"symphonia",
|
|
"symphonia/isomp4",
|
|
]
|
|
mkv = [
|
|
"symphonia",
|
|
"symphonia/mkv",
|
|
]
|
|
mp1 = [
|
|
"symphonia",
|
|
"symphonia/mp1",
|
|
]
|
|
mp2 = [
|
|
"symphonia",
|
|
"symphonia/mp2",
|
|
]
|
|
mp3 = [
|
|
"symphonia",
|
|
"symphonia/mp3",
|
|
]
|
|
mpa = [
|
|
"symphonia",
|
|
"symphonia/mpa",
|
|
]
|
|
ogg = [
|
|
"symphonia",
|
|
"symphonia/ogg",
|
|
]
|
|
pcm = [
|
|
"symphonia",
|
|
"symphonia/pcm",
|
|
]
|
|
vorbis = [
|
|
"symphonia",
|
|
"symphonia/vorbis",
|
|
]
|
|
wav = [
|
|
"symphonia",
|
|
"symphonia/wav",
|
|
]
|
|
|
|
[lib]
|
|
name = "kira"
|
|
path = "src/lib.rs"
|
|
|
|
[[test]]
|
|
name = "change_sample_rate"
|
|
path = "tests/change_sample_rate.rs"
|
|
|
|
[[test]]
|
|
name = "streaming_sound_stops_on_error"
|
|
path = "tests/streaming_sound_stops_on_error.rs"
|
|
|
|
[[test]]
|
|
name = "sync_send"
|
|
path = "tests/sync_send.rs"
|
|
|
|
[dependencies.assert_no_alloc]
|
|
version = "1.1.2"
|
|
optional = true
|
|
|
|
[dependencies.atomic-arena]
|
|
version = "0.1.2"
|
|
|
|
[dependencies.glam]
|
|
version = "0.33.0"
|
|
features = ["mint"]
|
|
|
|
[dependencies.mint]
|
|
version = "0.5.9"
|
|
|
|
[dependencies.pastey]
|
|
version = "0.2.1"
|
|
|
|
[dependencies.rtrb]
|
|
version = "0.3.2"
|
|
|
|
[dependencies.serde]
|
|
version = "1.0.219"
|
|
features = ["derive"]
|
|
optional = true
|
|
|
|
[dependencies.symphonia]
|
|
version = "0.5.4"
|
|
optional = true
|
|
default-features = false
|
|
|
|
[dependencies.triple_buffer]
|
|
version = "9.0.0"
|
|
|
|
[dev-dependencies.approx]
|
|
version = "0.5.1"
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.cpal]
|
|
version = "0.17.0"
|
|
optional = true
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies.cpal]
|
|
version = "0.17.0"
|
|
features = ["wasm-bindgen"]
|
|
optional = true
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies.send_wrapper]
|
|
version = "0.6.0"
|