Switch to full stage
Loading Project
Loading project …

Notes and Credits

for @ewils287 so what gives the fisheye is that when rays fire out equidistant from the player, and then they extend out, we also consider the distance parallel to the player's view plane. so, we multiply by cos(theta), so we only consider the distance perpendicular to the view plane. also, everytime a ray is cast, the direction is always atan(x/focal length). this is to make sure when rays extend out, they are equally distributed.

TurboWarp is a Scratch mod that compiles projects to JavaScript to make them run really fast. Try it out by inputting a project ID or URL above or choosing a featured project below.