 
   layoutContext.drawImage characterCanvas, 0, 0
 
-  {layoutCanvas, characterCanvas}
+  # Render the landmarks for rigging purposes.
+  landmarksCanvas = new AM.Canvas textureWidth * textureMagnification, textureHeight * textureMagnification
+  landmarksContext = landmarksCanvas.context
+
+  # Start with a very faint image of the character.
+  landmarksContext.globalAlpha = 0.2
+  landmarksContext.drawImage characterCanvas, 0, 0
+  landmarksContext.globalAlpha = 1
+
+  # Draw landmarks.
+  landmarksContext.fillStyle = 'white'
+  skeletonLandmarks = ['navel', 'xiphoid', 'suprasternalNotch', 'atlas', 'headCenter', 'shoulderLeft', 'shoulderRight',
+    'shoulder', 'elbow', 'wrist', 'fingertip', 'hypogastrium', 'acetabulumLeft', 'acetabulumRight', 'acetabulum',
+    'knee', 'ankle', 'toeTip']
+
+  for side, sideIndex in LOI.HumanAvatar.TextureRenderer.textureSides
+    landmarksContext.setTransform textureMagnification, 0, 0, textureMagnification, sideOffset * sideIndex * textureMagnification, 0
+
+    for landmark in humanAvatarRenderer.bodyRenderer.landmarks[side]() when landmark.regionId and landmark.name in skeletonLandmarks
+      landmarksContext.fillRect landmark.x + 0.25, landmark.y + 0.25, 0.5, 0.5
+
+    landmarksContext.restore()
+
+  {layoutCanvas, characterCanvas, landmarksCanvas}
 
 createRigRegion = (side, landmarks) ->
   header =

    for side, key of LOI.Engine.RenderingSides.Keys
      landmarks = bodyRenderer.landmarks[key]()
      archive.append EJSON.stringify(createRigRegion(key, landmarks), indent: true), name: "rigregions/#{_.toLower key}.json"

    # Complete exporting.
    archive.finalize()

    archive.append EJSON.stringify(createTextureRegions(), indent: true), name: "textureregions.json"

    # Export textures.
    {layoutCanvas, characterCanvas, landmarksCanvas} = createTextures()

    buffer = layoutCanvas.toBuffer 'image/png', compressionLevel: 9
    archive.append Buffer.from(buffer), name: "layouttexture.png"

    buffer = characterCanvas.toBuffer 'image/png', compressionLevel: 9
    archive.append Buffer.from(buffer), name: "previewtexture.png"

    buffer = landmarksCanvas.toBuffer 'image/png', compressionLevel: 9
    archive.append Buffer.from(buffer), name: "landmarkstexture.png"

    # Export rig regions.
    defaultBodyPart = LOI.Character.Part.Types.Avatar.Body.create
