/RayJ

A Ray Tracer Written In Java

Primary LanguageJavaThe UnlicenseUnlicense

RayJ

Having fun learning about ray tracers and implementing the ray tracer from http://raytracegroundup.com/.

Current Progress

Currently RayJ allows you to define planes, spheres, ambient light sources, and point light sources in your scene. Shading is done using the Blinn-Phong Model.

Future versions hope to include reflections, refractions, shadows, more light sources, and more objects. Ultimately, in the end I hope to be able to create a somewhat realistic rendering of the famous Cornell Box Image.

I also hope to add some way to watch live as the imaged is ray traced (I'm told this is an experience).

Running

Running ./gradlew run from the command line will create the image file image.ppm, which is the rendered image in the netpbm image format

Examples

Without Specular Term

With Specular Term

With Shadows

With Ambient Occlusion

License

Unlicense