aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorlamp2023-03-05 21:27:40 +0000
committerlamp2023-03-05 21:27:40 +0000
commit4fb356822ef98241d2e44b0b0bd31d7f214f9f20 (patch)
treeded1de844e9f4303c79d4bcea18d89e939215cf8 /README.md
initmain
Diffstat (limited to 'README.md')
-rw-r--r--README.md19
1 files changed, 19 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..2e07e71
--- /dev/null
+++ b/README.md
@@ -0,0 +1,19 @@
+# soft-raycasting-demo
+
+A simple (and slightly messy) software ray casting renderer, written in Rust.
+It uses [rust_minifb](https://github.com/emoon/rust_minifb) to create a window within which to render and capture input.
+Here's some of it's features:
+
+* A cell based layout system.
+* Affine texture mapped walls, floors and ceilings, with each cell able to have unique textures.
+* A simple font renderer, used for an FPS display.
+* Primitive BMP parsing for fonts and textures.
+* Simple lighting effect based on the alignment of a cell's walls.
+* Sprite rendering.
+* Adjustable camera height.
+* A 2D Z-buffer.
+* Thin wall support, including transparency.
+* Per-tile fog (but not volumetric).
+
+Based on [Lode Vandevenne's graphics tutorials](https://lodev.org/cgtutor/).
+All code is WTFPL licensed, and the assets in res/textures are the property of ID Software.