diff --git a/README.md b/README.md index cd4b436..6115b7e 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,9 @@ # raycastlib -Simple raycasting library for limited-resource computers. +Ray Casting library for (not only) limited-resource computers. -**Still WIP!** - -previews --------- +eye-candy previews +------------------ Pokitto: @@ -26,7 +24,40 @@ terminal: ![](/media/terminal.gif) +features +-------- + +- Very fast, small and efficient. +- Uses only integer math. +- No dependencies (uses only stdint standard library). +- Single header, KISS. +- Advanced rendering of variable height floor and ceiling. +- Textured walls and floor. +- Depth information (for fog). +- Camera shearing (looking up/down). +- Camera movement with collisions. +- Support for opening door. +- Pure C, tested to run as C++ as well. +- Optional framework functions that handle the whole rendering. +- Still flexible -- pixels are left for you to draw in any way you want. +- Tested on multiple platforms (PC, Arduboy, Pokitto). +- Many compile-time options to tune the performance vs quality. +- Well commented code. + +**NOTE**: Backwards compatibility isn't a goal of this libraray. It is meant to +be an as-is set of tools that the users is welcome to adjust for their +specific project. So new features will be preferred to keeping the same +interface. + +TODO +---- + +- Transparency (conditional ray passing through). +- Doors in the middle of squares. +- Rolling doors for `RCL_renderComplex`. +- Possibly merge all rendering functions into one. + license ------- -Everything is CC0 1.0. \ No newline at end of file +Everything is CC0 1.0. Please share your own software as free and open-source. \ No newline at end of file