We created this image while working on an animation for Spectranetics, for their ThromCat product; it makes for a good example of different elements that come into play when creating 3D illustrations or animations. What’s listed here is only a small part of the considerations that should be taken into account to create a quality image.
Full Image:
What’s shown here is the full image, with depth of field (DOF), ambient occlusion, blurred reflections, etc. These added details in the image enhance the overall look, helping to make the image pop, and to direct the eye to the tip of the device.
No Depth of Field:
Depth of field is generally what’s called a “post process” meaning that the effect is created after the initial 3D rendering; we prefer adding this in post because it allow us to render a nice clean initial image, and then we can add in the blurring after the fact, controlling the amount, the focal plan (what’s in focus), etc. Having the depth information also allows for us to control the intensity of the image, useful in certain circumstances.
No Ambient Occlusion:
“Ambient occlusion is a shading method used in 3D graphics which helps add realism to local reflection models by taking into account attenuation of light due to occlusion. Ambient occlusion attempts to approximate the way light radiates in real life, especially off what are normally considered non-reflective surfaces.” – Wikipedia
We use ambient occlusion (AO) to add an extra level of detail to images, especially object-oriented images like products and devices. AO can give an image a nice “pop”, bringing out details that otherwise wouldn’t be there through shadow alone. Unfortunately, it’s not a fast element to render, but it’s usually worth the rendering time (compare the above 2 images to see it’s benefit). We generally render this as a separate pass (separate rendering) and composite it into the image, controlling it’s strength as needed.
Below is the AO pass by itself.
No Blurred Reflections:
Not all reflections are as important as others. Here, the ground plane is set intentionally reflective, as if sitting on a shiny plane (a mirror, polished metal, etc.). But if you compare the above image to the images before, you can see that a straight reflection can often be distracting – it competes too much with the product itself. A nice ground plane reflection should help give the product some weight, allow the viewer to possibly see other details, but it should play a supporting role.
Also in this image, a couple of shiny metal elements do not have real (raytraced) reflections. This is a deliberate choice. Raytraced reflections give an added sense of reality generally, but sometimes the environment being reflected in the object becomes distracting – using other types of reflections (here just a texture map) can give a sense of reflectivity but also control.
Bonus points if you realized the blurred reflection becomes more blurred the further it gets from the product.
No Backlighting:
Backlighting is a nice way of styling an image, helping to separate foreground and background elements and overall give an image a certain punch. If you look at the differences between the above 2 images, the benefits should be obvious. It’s not for every image, but in many cases it can take a flat looking image and make it dynamic.
Bump Mapping:
Here’s a very standard detail used in virtually every 3D image – bump mapping. I indicate it here because sometimes bump (or bump and displacement) mapping is a good way to simulate a complex model through a simple texture map. The braided mesh of the catheter body would be difficult (and time consuming) to accurately model, but spending a bit of time making a good bump map can replace the need for it as a model. It may not be fully accurate, but it’s realistic enough for many situations.
Compare the above and below images, and you may notice that the braided mesh in the above image creates nice highlights and shading, and intertwines like a real mesh would (please excuse the low quality of these last two images – they’ve been scaled up instead of re-rendered at a higher resolution).