Contour Retopology Documentation

The Contour Retopology tool, also known as Contours is an addon for Blender that provides quick and easy ways retopologize cylindrical forms. Use cases include organic forms, such as arms, legs, etc. Contours is designed by Jonathan Williamson and developed by Patrick Moore.



For support on using Contours check out the support forums:



  • Current version: 1.0
  • Supported Blender version: Blender 2.68a
  • Release Logs



Contours is available for purchase from the CG Cookie shop page. After purchasing, you will receive a download link via email. You will also find download links from your Orders and Downloads page of your Dashboard. The download link gives you a .zip file, which can be saved anywhere on your local hard drive.


The easiest way to install Contours is to do so directly from Blender. You can do this by going to File > User Preferences > Addons > Install from File. This will open a File Browser in Blender, allowing to you navigate to and select the .zip file you downloaded. Press “Install from file”.

Once installed, Blender should automatically filter the addons list to show only Contours. You can then enable the addon by clicking the checkbox on the upper right of the addon panel. Pressing Instal from File will then install the addon and filter the addon search results to show it.


Usage and Workflow

Once activated, a new Contour Retopology panel will be added to the viewport toolbar, so long as a mesh object is selected. The toolbar is shown in both Object Mode and Edit Mode.

The basic workflow is to first select the high-resolution object, activate Contours, draw contour strokes, then generate the new mesh. If extending an existing mesh, then you must first select the high-resolution object in Object Mode, then select the retopologized mesh, enter Edit Mode, and then draw contours. While in Edit Mode, if an existing edge loop is selected, the contour strokes will extend the mesh from there and lock the vertex count to that of the edge loop.


contours_toolbar_1.0.0Contours creates a panel in the 3D Viewport Toolbar, labeled Contour Retopology. This toolbar panel gives easy access to the Contours tool and initial settings.

Draw Contours

Pressing this will activate the Contours tool, putting the user into a modal operation. During the operation the user can draw strokes to generate loops for the retopology mesh, which will automatically conform to the underlying surface (as designated by the selected object.)


Determine if Contours will attempt to generate a fully cyclic mesh or not. If cyclic is enabled, it will attempt to connect the start and end loops together. This is useful for creating rings and other torus like forms.

Vertex Count

Determine the number of vertices in each loop upon mesh generation preview. The number of vertices can be adjusted at anytime during the contour operation. See Vertex Count under Modal Operations.


If enabled, Recover allows the user to bring back the strokes from the previous session. This is used to restore strokes in the case of accidental cancellations, crashes, etc.

Recover Clip

The Recover Clip is used for ignoring the specified number of strokes, in reverse order. For example, if Recover Clip is set to 1, it will recover all but the last stroke drawn. This is useful in cases where the last stroke(s) caused problems that otherwise conflict with the recovery operation.

Clear Cache

This options provides recourse in the occasional instance where a mesh or modifier changes, such that a conflict occurs with the cache that Contours creates.

When activating Contours it will activate a modal operation, meaning the viewport is still interactive. During the modal operation the user is able to perform any number of tasks in order to generate the retopologized mesh, including drawing strokes, adjusting loop position, orientation, shift, and vertex count. The user can also continue to adjust the viewport, including switching to specific views with the numpad and toggling perspective on/off.


Loop Selection

Loops may be selected by left-clicking on them. Selecting a stroke allows hotkey transforms to be performed on the stroke.

Loop Delete

Loops may be deleted by clicking on them with the Right Mouse Button, or by pressing X.

Loop Slide (Translate)

Loops may be slid to either direction by selecting them and pressing G. Alternatively you can use the widget to slide with LMB+drag. When slid, strokes will proportionally align with their neighboring strokes. Loop slide works just like edge slide in Edit Mode while working with meshes.

Loop Rotation

Loops may be rotated by selecting them and pressing R. Rotation can also be done via the rotation widget handle, shown while hovering the mouse cursor over the loop.


Loop Shifting

Loops may have their vertices shifted around the loop by selecting the loop and pressing Left/Right Arrow.

Vertex Count

The vertex count for generated loops can be adjusted at anytime during the contour process by using – + or CTRL+MouseWheel Up/Down. This will adjust the total number of vertices in each loop.

Cursor to Stroke

View to Cursor

Addon Preferences

In order to allow for better user configuration, Contours comes with a complete set of addon preferences that allow the user to tweak the behavior, appearance, and more.

User Settings

The user settings are those that directly affect the user. For example, visualization settings for the generated retopology mesh and performance options.


Automatically Align Vertices

This will attempt to automatically align the vertices in each stroke with the vertices in the neighboring strokes. In general this leads to much better, and more expected behavior. However, it can be a bit slower on complex forms.

Live Update

Show stroke transforms in real-time as stroke position and orientation are adjusted. When disabled a small widget is drawn to indicate the transform changes.

Use Perspective

When Use Perspective is enabled, drawn strokes will take the current perspective into account when projecting the angle of the stroke onto the surface. This helps create more accurate loops.

Enable X-Ray At Mesh Creation

This option will cause X-Ray to be enabled automatically on the newly generated retopology mesh. At times this is preferable in order to better see the new mesh.

Loop And Stroke Settings

To allow user customization and better compatibility with various Blender themes, colors, sizes, and display preferences can be adjusted for contour strokes and mesh previews.


Stroke Color

The color used for contour strokes.

Geometry Color

The color used for generated mesh previews.

Hover Color

The color for selected loops and the hover state for loops.

Handle Size

The size (in pixels) of stroke handles. Handles are the start and end points of the stroke.

Stroke Thickness

The size (in pixels) of stroke lines.

Show Edge Loops

Toggle for showing or disabling edge loop preview in the generated mesh during the contour process.

Show Edge Rings

Toggle for showing or disabling edge ring previews in the generated mesh during the contour process.

Edge Thickness

The size (in pixels) of the preview mesh edges.

Vertex Size

The size (in pixels) of the vertices in the preview mesh.

Widget Settings

The widget allows the user to manipulate loops with the mouse, but not all users prefer this. The widget can be disabled entirely, and the sizes and colors can be adjusted.


Display Widget

Turn the widget display on or off for the 3D viewport.


Control the outside radius of the widget.

Inner Radius

Control the size of the active radius, which is use for resetting widget transforms by bring your mouse cursor back within the circle.

Line Thickness

Control the line thickness of the outer widget circle.

Second Line Thickness

Control the line thickness for the secondary widget circle, used to illustrate the rotate operation.

Arrow Size

Control the size of the arrows on each end of the second line.

Translate Arrow Size

Control the size of the arrows used to illustrate the translate/slide operation.

Widget Colors

These colors allow customization of each part of the widget.

Debug Settings