You can help CodeWalrus stay online by donating here. | New CodeWalrus | Old (dark mode) | Old (light) | Discord server

[C] AntiCaster: a non euclidean raycaster

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

0
b/PC, Mac & Vintage Computers publicado por u/Snektron November 16, 2015, 07:04:02 PM
For the past few days i have been working on a little proof of concept: non euclidean space in a raycaster!
Basically, the space can be stretched or compressed, on tiles, making the rays do all sorts of crazy things, for
example a tunnel can seem 10 tiles long (and, since player movement is slowed down too it takes the same
time as to walk though it as an actual tunnel of 10 tiles), but in reality you only traveled 1 tile.

gif (about 500kb):


I probably add some more cool things, like portals and such and
turn this into a little engine. (Wolfenstein4D?)

You can find the window executable at http://quantuminfinity.space/files/ac.zip
It depends on SDL, so SDL.dll (included in the download) needs to be either besides the executable or
on your system's path.
It should be possible to run on linux and mac too, but you'll need to build yourself.
You can find the source at https://github.com/quantuminfinity/anticaster
Inicia sesión o crea una cuenta para dejar un comentario
u/novenary November 16, 2015, 07:09:34 PM
Wow damn, that's pretty awesome. Good job. *.*
u/Ivoah November 16, 2015, 07:12:24 PM
This looks pretty neat! I can't wait to see where you go with it. It reminds me of CNLohr's No! Euclid! (https://github.com/cnlohr/noeuclid)
u/Snektron November 16, 2015, 07:17:44 PM
Quote from: Streetwalrus on November 16, 2015, 07:09:34 PM
Wow damn, that's pretty awesome. Good job. *.*

Thanks :D

Quote from: Ivoah on November 16, 2015, 07:12:24 PM
This looks pretty neat! I can't wait to see where you go with it. It reminds me of CNLohr's No! Euclid! (https://github.com/cnlohr/noeuclid)


i sawthat one awhile ago too, its pretty awesome
u/novenary November 16, 2015, 07:25:15 PM
Now that's impressive.
u/Dream of Omnimaga November 17, 2015, 12:54:05 AM
Wow that is actually pretty cool. Would textures or shading slow it down much? You could make some mindf***ing puzzle maze game out of this O.O
u/aetios November 17, 2015, 01:05:56 AM
dang, that got a fairly high WTFUWOTM8 value.
u/Snektron November 17, 2015, 01:14:29 AM
Quote from: aeTIos on November 17, 2015, 01:05:56 AM
dang, that got a fairly high WTFUWOTM8 value.
Thanks ;D

Quote from: DJ Omnimaga on November 17, 2015, 12:54:05 AM
Wow that is actually pretty cool. Would textures or shading slow it down much? You could make some mindf***ing puzzle maze game out of this O.O
Yeah, i will be working on that :)
u/alexgt November 17, 2015, 02:38:10 AM
Wow, my mind is bleeding as to how you coded that, great job O.O.

No, plz don't explain I might suffer a coma :P
u/Hayleia November 17, 2015, 07:39:05 AM
Lol, you can make some really annoying games with that :P
You're probably more limited than AntiChamber but you still can do this kind of annoying things I guess :P
u/Snektron November 17, 2015, 01:13:38 PM
Quote from: Hayleia on November 17, 2015, 07:39:05 AM
Lol, you can make some really annoying games with that :P
You're probably more limited than AntiChamber but you still can do this kind of annoying things I guess :P
Yeah, mostly because this is essentialy 2d (well, the raycasty part is) and AntiChamber is 3d, but im fairly certain it uses the same kind of technique.

Quote from: alexgt on November 17, 2015, 02:38:10 AM
Wow, my mind is bleeding as to how you coded that, great job O.O.

No, plz don't explain I might suffer a coma :P

Let's just say that i use raycasting because it's way closer to real life than rasterization (drawing triangles), considering light are rays too. It would actually
be almost impossible to make using rasterization. That's probably why i don't like it when people implement it in minecraft (especially in vanilla) since i know
the engine doesn't support it and people just make hacks to test where players are and change the world according to it <_<
u/Hayleia November 17, 2015, 03:59:11 PM
Quote from: Cumred_Snektron on November 17, 2015, 01:13:38 PM
Let's just say that i use raycasting because it's way closer to real life than rasterization (drawing triangles), considering light are rays too. It would actually
be almost impossible to make using rasterization. That's probably why i don't like it when people implement it in minecraft (especially in vanilla) since i know
the engine doesn't support it and people just make hacks to test where players are and change the world according to it <_<
You can do it with a raytracer if you want the best realism and full 3D :P
But forget about speed then :P
u/Snektron November 17, 2015, 04:04:04 PM
I could probably pull it off (with some shaders) though, but i liked the idea of implementing it in a raycaster.
The way i did it it should be fairly easy to port over to less powerfull devices too (though i do need to calculate a lot of sqrts).
u/Ivoah November 17, 2015, 04:22:38 PM
The Makefile doesn't work :(
u/Snektron November 17, 2015, 05:23:37 PM
The makefile is a makefie generated by eclipse, and i'm not really sure how to build it otherwise. I'l try to build it manually
Start a Discussion

b/PC, Mac & Vintage Computers

Computer programming discussion and project showcase

132
Topics
Explore Board
Website statistics


MyCalcs | Ticalc.org | Cemetech | Omnimaga | TI-Basic Developer | MaxCoderz | TI-Story | Casiocalc.org | Casiopeia | The Museum of HP Calculators | HPCalc.org | CnCalc.org | Music 2000 Community | TI Education | Casio Education | HP Calcs | NumWorks | SwissMicros | Sharp Calculators
Powered by EzPortal