summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-02-02 12:19:10 +0100
committerskal <pascal.massimino@gmail.com>2026-02-02 12:19:10 +0100
commitdc47af28f09705d28e9975867d7fad9a395f9163 (patch)
tree5ae97b21542d2824c9c9d422ed1b4a25331fa1a2 /README.md
parenta5b27673c29ca39b6b35bb0f5c4be224d7b41b5a (diff)
refactor(build): Centralize generated files and clean up project layout
- Task A: Centralized all generated code (assets, timeline) into a single directory to create a single source of truth. - Task A: Isolated test asset generation into a temporary build directory, preventing pollution of the main source tree. - Task B: Vertically compacted all C/C++ source files by removing superfluous newlines. - Task C: Created a top-level README.md with project overview and file descriptions. - Task D: Moved non-essential documentation into a directory to reduce root-level clutter.
Diffstat (limited to 'README.md')
-rw-r--r--README.md31
1 files changed, 31 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..aff5251
--- /dev/null
+++ b/README.md
@@ -0,0 +1,31 @@
+# 64k Demo Project
+
+This is a C++ project aiming to create a cross-platform (Windows, macOS, Linux) 64-kilobyte demo.
+
+## Project Files
+
+- `ASSET_SYSTEM.md`: Describes the custom asset packing and management system.
+- `BUILD.md`: Instructions for building the project.
+- `CONTRIBUTING.md`: Guidelines for contributing, including coding style and commit policies.
+- `FETCH_DEPS.md`: Information on third-party dependencies.
+- `HOWTO.md`: General instructions for running and interacting with the demo.
+- `PROCEDURAL.md`: Details on the procedural texture generation system.
+- `PROJECT_CONTEXT.md`: A comprehensive overview of the project's architecture, features, and current state.
+- `SPEC_EDITOR.md`: Plans for a future web-based spectrogram editor tool.
+- `TODO.md`: A list of immediate, small-scale tasks.
+
+## Source Code Layout
+
+The source code is organized into the following main directories:
+
+- `src/`: The main C++ source code for the demo.
+ - `3d/`: Core 3D rendering components (camera, scene, renderer).
+ - `audio/`: Audio synthesis and processing engine.
+ - `gpu/`: WebGPU rendering pipeline, effects, and shader management.
+ - `procedural/`: Procedural content generation (textures, etc.).
+ - `tests/`: Unit and integration tests for various components.
+ - `util/`: Shared utility classes, like the asset manager.
+- `assets/`: Raw assets (audio, sequence files) that are processed and packed.
+- `scripts/`: Helper scripts for building, packaging, and running the demo.
+- `tools/`: Source code for command-line tools used in the asset pipeline (e.g., `asset_packer`, `spectool`).
+- `third_party/`: Third-party libraries like miniaudio and glfw3webgpu.