Raycaster Competition

BlitzMax Forums/BlitzMax Programming/Raycaster Competition

I can explain how to remove the fish eye effect.
In fact, the Fish-eye effect is caused when your raycasting algorithm is not correct:
In a tradionnal fish-eye raycaster, you basically setup a field-of-view (FOV), say 90 degrees, and you then cast one ray per screen column, say 320, with a calculated delta degree, 90 / 320 = 0.28125 degree per column.

That's not the right way: it will always give a 'fish eye' effect, more visible if the FOV is large. You can try to do a 'fish eye correction' with some acos() stuff but it doesn't work.

I might sketch up something to demonstrate the right way I'm talking about..