Java Raytracer

Voor onderzoek naar render-technologie heb ik in 2010 zelf een raytracer gemaakt. Dit heb ik kunnen maken met de API Processing 1.0, wat gebaseerd is op Java. Ik heb een week over het onderzoek en programmeren gedaan.
Deze raytracer bevatte deze mogelijkheden:

  • Het renderen van bollen.
  • Het renderen van oneindige vlakken.
  • Het renderen met meerdere (oneindige) lichtbronnen.
  • Supersampling.
  • Difuse verlichting.
  • Schaduwen.
  • Reflecties.

Resultaten:

java_raytracer java_raytracer2

Bijna een jaar later ben ik, dankzij interesse en betreffende cursussen in mijn studie, verder gegaan met het programmeren van deze raytracer. Ik heb het project geïmporteerd in NetBeans en ben een duidelijkere structuur gaan bouwen. Ik heb de sourcecode voor het gemak hier op Google Code gezet. Dit waren de verbeteringen die ik er uiteindelijk in heb gezet:

  • Het renderen van polygonen en hun schaduwen.
  • Inladen van modellen met OBJ parser.
  • Texture mapping (UV mapping) op polygonen.
  • Normal mapping. Uiteindelijk niet realistisch gelukt.
  • Soft Shadows.

Resultaten:

java_raytracer4
Modellen inladen
java_raytracer5
Texture Mapping (UV mapping)
java_raytracer3
Normal mapping en soft shadows