Non Photorealistic Shading


This page shows geometries shaded in such a way that they are intended to mimic the "look" of images recorded by a scanning electron microscope.



Final Animation



Side by Side Comparison



Visualizer (with displacement) and Occlusion Render (without displacement)



Technical Issues and Problems

My main strategy issue that I encountered when beginning this project was how to encorporate multiple areas of completely different kinds of diplacement into one continuous object. I ended up creating two disks that were slightly different from eachother which were each broken up into three seperate meshes so that I could have three unique areas of displacement for the outer, middle. and inner sections of each disk. The displacements of the outer sections were created by a Pixar fractal node and an OSL node that created a modified sine wave displacement. The middle section used a Pixar Voronoise node and a Pixar Fractal node. The inner section, because the diplacement was so specific, was created with a displacement map I drew in Photoshop with an added OSL node called "Alligator Noise" made by Side Effects Software Inc.. The shader colors came from an OSL code created in class which assigns a light and dark value to areas of geometry based on their curavture, and another OSL node that adds a false lighting effect using a Place 3D texture Matrix. I encountered a techincal issue when creating the background, which was that the displacement shaders did not react well with the nGons created by using the boolean tool on a plane and cylinders. Because of this, I had to manually break up the plane into quads using the multi-cut tool, which was tedious but in the end allowed for a fairly close match with the reference image.

Link to SEM_Edge.osl
Link to SEM_Direction.osl
Link to SineWave.osl
Link to GatorNoise.osl
Link to FloatingParticles.py


Self Evaluation

I was mostly very happy with how this prodject turned out. I really enjoyed creating displacment procedurally from scratch as it was an interesting change from modifying the procedural displacement maps available in Substance Painter's built-in shaders, which is what I have more practice with. I also found it a fun challenge to try to match a photo using only shaders and no lighting. I wish I was able to get a closer match for my photo, as there were some more complicated elements of displacement in the reference of the Gephyrocapsa oceanica that I was not able to match. I also found some difficulties with the geometry of the background and how that interacted with the code we created that highlights the curvature of the geometry. With my ideal results, the circular cavities in the background would have had a halo of a lighter shader color, but unfortunately I was not able to achieve this. Overall, I'm quite pleased with the match I was able to create for my reference image.