Generating Hiddenline (wireframe) Images
with Rendering Software

Written by Paul Bourke
March 1993

Scripts for Radiance


Most high quality rendering packages are designed to create photorealistic views of a scene and cannot be convinced to produce the more modest wireframe hiddenline images. The assumption is often made that the 3D modelling package that was used to create the scene description is capable of generating plans, elevations, axonometric, and perspective hiddenline views. This is usually the case but there are some situations when it is not true or convenient. The first is for those scenes that are generated partly or entirely "by hand" using the language of the rendering packages scene description. Another situation is when the user needs to create wireframe drawings that exactly match the views and camera attributes of the rendered images. Finally it is unfortunate that most 3D modelling programs at one time or other have problems creating hiddenline images, that is, they make mistakes!

The following algorithm which is illustrated at each stage, can be used with all raytracing and radiosity rendering software to create hiddenline images. The example provided is shown rendered in figure 1, it was created using ArchiCAD as a 3D modeller and the Radiance package for the rendering.

Step 1
Render the image with no light sources, with all the textures (materials) removed and replaced with textures with no specularly or roughness and each one a unique colour. A relatively high ambient light should also be used, the example here had an ambient setting of 0.5. Figure 2 is our example rendered with these characteristics.

Step 2.
Pass an edge detection filter over the image. This may be something as crude as a 2x2 mask filter.

       -1

   -1   4   -1

       -1

The result of this should be converted to a black and white image with an appropriate cut-off level. The output from our example is shown in figure 3, a wireframe hiddenline view from a rendering package.

Note
The edge detection for the example was done using the "find edge" tool in the PhotoShop application.