From 4fbf74f729b17d756754340a109e04c4a8030774 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20=C4=8C=C3=AD=C5=BE?= Date: Mon, 24 Jun 2019 16:20:16 +0000 Subject: [PATCH 1/7] Update README.md --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index f58bdaa..04b67a9 100644 --- a/README.md +++ b/README.md @@ -7,17 +7,17 @@ If you like this, you may also like my similar project: [small3dlib](https://git eye-candy previews ------------------ -Pokitto: +Pokitto (32bit embedded console, 48 MHz, 36 kB RAM): ![](/media/pokitto1.gif) ![](/media/pokitto2.gif) ![](/media/pokitto3.gif) -SDL: +SDL (PC): ![](/media/sdl.gif) -Arduboy: +Arduboy (8bit Arduino console, 16 MHz, 2.5 kB RAM): ![](/media/arduboy.gif) ![](/media/arduboy2.gif) @@ -26,7 +26,7 @@ terminal: ![](/media/terminal.gif) -Gamebuino META: +Gamebuino META (Arduino 32bit console, 48 MHz, 32 kB RAM): ![](/media/gamebuino.gif) From c2a35db35b1d9934066b98b349b3bdd4112a9ac0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20=C4=8C=C3=AD=C5=BE?= Date: Tue, 25 Jun 2019 14:52:54 +0000 Subject: [PATCH 2/7] Update README.md --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 04b67a9..1f6cf46 100644 --- a/README.md +++ b/README.md @@ -97,4 +97,8 @@ TODO license ------- -Everything is CC0 1.0 + a waiver of all other IP rights (including patents). Please share your own software as free and open-source. +Everything is CC0 1.0 + a waiver of all other IP rights (including patents). The art used in demos is either my own released nder CC0 or someone else's released under CC0. + +Please support free software and free culture by using free licenses and/or waivers. + +If you'd like to support me or just read something about me and my projects, visit my site: [www.tastyfish.cz](http://www.tastyfish.cz/). \ No newline at end of file From 9852aec2ef83c3ad3b241f3981b55a563a2759f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20=C4=8C=C3=AD=C5=BE?= Date: Tue, 25 Jun 2019 15:08:18 +0000 Subject: [PATCH 3/7] Update README.md --- README.md | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index 1f6cf46..8396970 100644 --- a/README.md +++ b/README.md @@ -33,23 +33,23 @@ Gamebuino META (Arduino 32bit console, 48 MHz, 32 kB RAM): features -------- -- Very fast, small and efficient. -- Uses only integer math (32bit). -- No dependencies (uses only stdint standard library), extremely portable. -- Single header, KISS. -- Advanced rendering of variable height floor and ceiling. -- Textured walls and floor. -- Depth information (e.g. for fog or z-buffer rendering). -- Camera shearing (looking up/down). -- Camera movement with collisions. -- Partial support for opening door. -- Pure C99, 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, Gamebuino META). -- Many compile-time options to tune the performance vs quality. -- Well commented and formatted code. -- Completely free of legal restrictions, do literally anything you want. +- Very **fast, small and efficient**. +- Uses **only integer math** (32bit). The tiny version should only require 16bit, but isn't completed. +- **No dependencies** (uses only stdint standard library), extremely portable. +- **Single header**, KISS. +- Advanced rendering of **variable height floor and ceiling**. +- **Textured walls and floor**. +- **Depth information** (e.g. for fog or z-buffer rendering). +- **Camera shearing** (looking up/down). +- Camera movement with **collisions**. +- Partial support for **opening door**. +- **Pure C99**, 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, Gamebuino META). +- **Many compile-time options** to tune the performance vs quality. +- **Well commented** and formatted code. +- Completely **free of legal restrictions**, do literally anything you want. **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 From d8defb21cc29b65ba3ef05b452da7b06252b3dd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20=C4=8C=C3=AD=C5=BE?= Date: Tue, 25 Jun 2019 15:10:10 +0000 Subject: [PATCH 4/7] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8396970..bc7678a 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ which contains some better documented example code, including a [very simple hel The basic philosophy is: -- The library implements only a rendering back-end, it doesn't permorm any drawing to the actual screen, +- The library implements only a rendering back-end, it doesn't perform any drawing to the actual screen, hence there is no dependency on any library such as OpenGL or SDL. It just calls your front-end function and tells you which pixels you should write. How you do it is up to you. - Before including the header, define `RCL_PIXEL_FUNCTION` to the name of a function you will use to From 6934eccc76b23404b727a94cb05a6067c24aa0f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20=C4=8C=C3=AD=C5=BE?= Date: Tue, 25 Jun 2019 15:22:42 +0000 Subject: [PATCH 5/7] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index bc7678a..eeee3a4 100644 --- a/README.md +++ b/README.md @@ -59,6 +59,8 @@ interface. how to use ---------- +**Don't forget to compile with -O3!** This drastically improves performance. + For start take a look at the [testTerminal.c](https://gitlab.com/drummyfish/raycastlib/blob/master/programs/testTerminal.c) program. It is only a little bit more complex than a simple hello world. From 5a0c2059139b23af474585ecd71d03cbc1b86d13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20=C4=8C=C3=AD=C5=BE?= Date: Tue, 25 Jun 2019 16:30:22 +0000 Subject: [PATCH 6/7] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index eeee3a4..f988cd4 100644 --- a/README.md +++ b/README.md @@ -99,7 +99,7 @@ TODO license ------- -Everything is CC0 1.0 + a waiver of all other IP rights (including patents). The art used in demos is either my own released nder CC0 or someone else's released under CC0. +Everything is CC0 1.0 + a waiver of all other IP rights (including patents). The art used in demos is either my own released under CC0 or someone else's released under CC0. Please support free software and free culture by using free licenses and/or waivers. From a54494d623defc48c8f9d2654dfa03632b6f3180 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20=C4=8C=C3=AD=C5=BE?= Date: Wed, 26 Jun 2019 19:11:21 +0000 Subject: [PATCH 7/7] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index f988cd4..481a1f6 100644 --- a/README.md +++ b/README.md @@ -67,6 +67,8 @@ It is only a little bit more complex than a simple hello world. For more examples see the other files, plus my [Pokitto demos](https://gitlab.com/drummyfish/Pokitto-Raycasting) repository, which contains some better documented example code, including a [very simple hello world](https://gitlab.com/drummyfish/Pokitto-Raycasting/blob/master/helloRay.cpp). +Also see **the library code itself**, it is meant to be self-documenting -- you'll find the description of a lot of things at the start of the file. + The basic philosophy is: - The library implements only a rendering back-end, it doesn't perform any drawing to the actual screen,