Obelisk
Wolf3D style rayCasting engine in progress. Architecture modeled after DinoRush. (Thanks jxv!)
This project is meant to serve as a reference engine for teaching with as much of the core raycasting code as pure as possible. This way you can play with the code in GHCI to use as a reference for your own raycasting engine in another language.
Progress Demos
Raycasting
-
Get wall renderering working.
-
Fish eye fix
2022-03-22.16-11-19.mp4
- Wall Texturing
wallTextures.mp4
- Multi Texture Selection
2022-04-01.12-26-03.mp4
- Transparent walls
DEV BUILD
Nix and Nix-shell setup to make things more consistent
Windows Build
Needed dlls
- SDL2.dll
- SDL2_ttf.dll
- libfreetype-6.dll
- zlib1.dll
CODE PAGE
Make sure code page 65001 is set. For some reason hPutChar in Criterion yakks cause codepage 437 is set. The .ghci file should handle it.
Benching
Profiling raybench
./RayBench +RTS -p
Profiteur raybench.prof
TODO fprof-auto costcenters for Ray.hs
Credits
Thank you to: