A framework for creating various Non-Euclidean effects achieved using numerous advanced graphical methods, including RTT (render-to-texutre), recursive scene rendering, stencil masking, and with addition of porting models to a Non-Euclidean space using the appropriate forumlae for converting position and vector data.
- Stencil-Masked Geometry
- Render-To-Texture
- Recursive Scene Rendering
- Porting to Non-Euclidean Space
The Non-Euclidean framework provides numerous tools for interacting with the graphics features that have been implemented. Refer to the following information on how to install and use the application.
To use the framework, the following prerequisites must be met.
- Windows 10+
- Visual Studio
- Git Version Control
The framework relies on the following libraries and APIs to function.
- DirectX 11
- ImGui
- Assimp
To download a copy of the framework, select "Download ZIP" from the main code repository page, or create a fork of the project. More information on forking a GitHub respository can be found here.
As the project settings have been modified to support the addition of the aforementioned libraries and APIs, there are no additional steps required to execute the application.
Non-Euclidean Geometry | RTT & Recursive Scene Rendering |
Elliptic & Hyperbolic Spaces | Optical Illusions |
Code Reference
Luna, F., (2011). Introduction to 3D Game Programming with DirectX 11, Mercury Learning & Information.
Available at: https://files.xray-engine.org/boox/3d_game_programming_with_DirectX11.pdf
"Mathematics for 3D Game Programmming and Computer Graphics" by Eric Lengyel
Research Reference
Bruce, A., (2015). Antichamber: An Overnight Success, Seven Years In The Making, GDC, [video]. Available at: https://www.youtube.com/watch?v=wOlcB-JxkFw (Accessed: 26th October 2022)
Möller, H., (2018). Antichamber: A strange world, Munich, Bavaria, [paper]. Available at: https://hendrik.fam-moe.de/wp-content/uploads/2019/02/Antichamber_Analysis.pdf (Accessed: 26th October 2022)
Chyr, W., (2016). Manifold Garden: Level Design in Impossible Geometry, GDC, [video]. Available at: https://www.youtube.com/watch?v=ed2zmmcEryw (Accessed: 26th October 2022)
L. Sandal, M., (2020). ‘The Backrooms Game’ Brings a Modern Creepypasta to Life [What We Play in the Shadows], [editorial]. Bloody-Disgusting [editoral]. Available at: https://bloody-disgusting.com/editorials/3614536/play-shadows-backrooms-game-brings-modern-creepypasta-life/ (Accessed: 26th October 2022)
Ilett, D., (2019). Portals | Part 2 - Stencil-based Portals, Headache-inducing geometry, [editorial]. Available at: https://danielilett.com/2019-12-14-tut4-2-portal-rendering/ (Accessed: 26th October 2022)
Rinsma, T., (2013). Rendering recursive portals with OpenGL, [editorial]. Available at: https://th0mas.nl/2013/05/19/rendering-recursive-portals-with-opengl/ (Accessed: 26th October 2022)
Szirmay-Kalos, L., & Magdics, M., (2021). Adapting Game Engines to Curved Spaces, [paper]. SpringerLink, Available at: https://link.springer.com/article/10.1007/s00371-021-02303-2 (Accessed: 26th October 2022)
Stone, J., (2016). OpenGL Render to Texture, Render to Texture: Fixed Function vs. Modern OpenGL, ICS, [editorial]. Available at: https://www.ics.com/blog/render-texture-fixed-function-vs-modern-opengl (Accessed: 13th November 2022)
J. Kligard, M., (1999). Improving Shadows and Reflections via the Stencil Buffer, [paper]. Available at: https://www.researchgate.net/publication/238248138_Improving_Shadows_and_Reflections_via_the_Stencil_Buffer (Accessed: 13th November 2022)
Cronkhite, J., (2008). Why Is Minkowski Spacetime Non-Euclidean?, [paper], American Journal of Physics. Available at: https://www.nist.gov/publications/why-minkowski-spacetime-non-euclidean (Accessed: 20th November 2022)
Smith, K., (2020). Non-Euclidean Worlds Engine, CodeParade, [video]. Available at: https://www.youtube.com/watch?v=kEB11PQ9Eo8 (Accessed: 27th November 2022)
Smith, K., (2020). Non-Euclidean Geometry Explained – Hyperbolica Devlog #1, CodeParade, [video]. Available at: https://www.youtube.com/watch?v=zQo_S3yNa2w (Accessed: 27th November 2022)
Segerman, H., (2015). Illuminating hyperbolic geometry, [video]. Available at: https://www.youtube.com/watch?v=eGEQ_UuQtYs (Accessed: 27th November 2022)