18 lines
940 B
Markdown
18 lines
940 B
Markdown
### 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 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
|