# JPath
JPath is a CPU based Java Ray- and Pathtracer.
Its not intented to perform well in term of speed or efficiency.
Its more of a concept work.

# Screenshots

## Pathtracing
Features:
* Diffuse Pathtracing
* Cosine weighted diffuse ray generation
* Temporal anti aliasing

Supported Lights:
* Point
* Directional (Sun)
* Mesh lights

Pathtraced image with high resolution         |  Pathtraced image with low resolution
:-------------------------:|:-------------------------:
![raytracing_0](https://git.teridax.de/teridax/jpath/raw/branch/main/screenshots/Screenshot_20230420_124425.png) | ![raytracing_1](https://git.teridax.de/teridax/jpath/raw/branch/main/screenshots/Screenshot_20230420_124743.png)

## Raytracing
Features:
* Diffuse raytracing
* Reflections
* Temporal anti aliasing

Supported Lights:
* Point
* Directional (Sun)

Raytraced image looking at a mirror           |  Raytraced image from the opposite view
:-------------------------:|:-------------------------:
![raytracing_0](https://git.teridax.de/teridax/jpath/raw/branch/main/screenshots/Screenshot_20230420_124903.png) | ![raytracing_1](https://git.teridax.de/teridax/jpath/raw/branch/main/screenshots/Screenshot_20230420_124951.png)
