Babbie's first software-rendered ray-casting

Download
Link to GitHub Repository

This is my first, albeit small project I have worked on in a while, as I have been tied up with school. Thankfully now that Summer is here I can finally knuckle-down and get some work done :slight_smile:

The title is pretty self-explanitory, I hope. This is basically a project started so I could learn about the mathematics and practice the implementation of Raycasting, I am following This excellent article by F. Permadi : http://www.permadi.com/tutorial/raycast/index.html

As the title also suggests, I am new to the realm of Raycasting, so any suggestions or help you could provide would be most appreciated :wink:

If you too are new to raycasting, please feel free to ask any questions as to how I went about implementing it in this little demo

Controls : WASD to move, Q and E to rotate view

PS : I am aware of the ‘flashing white screen’ observed while moving, The way I achieve rendering in this project is, every time the player’s position/rotation changes, to use 3D maths to calculate a 1-dimensional int array of length (window_width * window_height) which will act as a ‘pixel-buffer’, update an image using the pixel buffer and use the Component.repaint() to re-draw the image(which is streched accross the window). This probably isn’t the best way to render, but if anyone can suggest a better way, please let me know and I will see if I can implement it :wink:
[EDIT]
nvm, its fixed now :slight_smile: