Alex's Blog

Version 0.0.3

Monte Carlo rendering brings many problems to the table, and will be something that I continue to develop over a long period of time. Version 0.0.3 begins this process, which will be developed over the coming versions, but for now is non-functional for all but the most basic scenes.

v003 gooch render.png

A sphere that has been Gooch shaded, using a red lambertian base material. The blue side of the sphere is pointing towards the ‘light’, although constant luminance is used in this scene.

Version 0.0.3 also implements the Gooch shading algorithm, as proposed in her paperĀ here. This shading algorithm results in a cool-warm gradient on the object, orientated towards a specified light. The specifics of how this works will be outlined in a future post. This gives a more cartoonish visual, which could be combined with other techniques such as edge lines to create a non-photorealistic appearance.

 

Release 0.0.3

Rendering methods:

  • Distributed (stochastic) path tracing
  • Monte Carlo path tracing (in-progress) (new)

Objects:

  • Spheres
  • Quads
  • Triangles (unstable)

Material BRDFs:

  • Ideal Lambertian, dielectric, metallic
  • Oren-Nayar reflectance model (buggy)
  • Blinn-Phong shading model (in-progress)
  • Diffuse area lights
  • Gooch shading (new)

Acceleration structures:

  • In-core multithreading support

Output file types:

  • .hdr
  • .ppm

Next release: edge detection and edge line pass

Next Post

Previous Post

© 2024 Alex's Blog

Theme by Anders Norén