From 9d4e74f0b6e9e30d9aaafc2bbef6e01ab8f291c1 Mon Sep 17 00:00:00 2001 From: jacob Date: Mon, 6 Apr 2026 11:24:46 -0500 Subject: [PATCH] readme --- readme.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 readme.md diff --git a/readme.md b/readme.md new file mode 100644 index 00000000..7dc1b9a5 --- /dev/null +++ b/readme.md @@ -0,0 +1,17 @@ +### Building +--- +Run `build.bat` from a terminal with MSVC/Clang available. + +### Codebase structure +--- + +This codebase is organized into a series of layers with acyclic dependencies, denoted by the file tree and by namespacing in source code. The `.lay` files that exist alongside each layer specify these dependencies along with things like source files, CPU/GPU linkage information, and binary assets to embed with the layer. These files are parsed by the metaprogram (controlled by build.bat) in order to assemble the final executable. The base layer is the only layer that doesn't adhere to these rules, so that the metaprogram can itself depend on it. + +Other than `.lay` files, there are three types of source files present: +* `.c`/`.h` C code +* `.g`/`.gh` HLSL code +* `.cg`/`.cgh` Combined C/HLSL code, mostly used to share structures/definitions for CPU <-> GPU communication + +### Media +--- +For project media, see https://projects.cagori.com/#power-play \ No newline at end of file