noeuclid

by cnlohr

cnlohr / noeuclid

Non-euclidean GPU Raytraced Game

573 Stars 49 Forks Last release: Not found BSD 3-Clause "New" or "Revised" License 167 Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Compiling and running

On Linux:

make -j
./noeuclid

On Windows: Open MSYS shell and run:

make noeuclid.exe
./noeuclid.exe
Explanation Video

Prerequisites

You'll probably want to compile your own copy of TinyCC, you'll need to build tcc 0.9.26.

Right now we use GLUT, But we plan to (already have moved?) to SDL.

And you'll need a modern GPU. Some intel GPUs kind of work, most post-2013 NVIDIA and ATI GPUs work, too. (And higher end ones from before)

Files you care about:

  • rooms.txt < the levels.
  • scripthelpers.h < helper functions for the level scripts
  • tileattributes.txt < File containing the visual appearance for various tiles.

Modifying rooms.txt while the game is running will just cause it to be recompiled in-place. Where you are.

Hotkeys:

Key

Action

a
Walk forward.
s
Walk backward.
d
Walk right.
w
Walk Left.
   (spacebar) | jump.
g
| Go into noclip mode.
]
| Go up.
[
| Go down.
0
| Show additional debug info.
+
| Go up level.
-
| Go down level.
r
| Reload current.
l
| Load ALL levels right now.
p
| Pauses.
8
| Mouse Sensitivity down.
9
| Mouse Sensitivity up.

You can add new blocks by modifying tileattributes.txt

Building on Linux: Needed packages:

sudo apt-get install build-essential libtcc-dev libsfml-dev libglew-dev

Building on Windows: You need MinGW to build on Windows.

Caveats

Does not run on discrete GPU on macOS. If running on macOS use a tool such as gfxCardStatus to force the integrated GPU

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.