Rendering Curves as Feathers

Login to Follow
  • Film & VFX
  • Games
  • Design Visualization
  • Rendering
  • Shading
  • Arnold
  • Maya
Skill Level
  • Beginner
60 min

Feather rendered as curves (rollover image).

This tutorial will cover how to render a feather using a paint effects brush that has been converted to curves.

A Maya file is available here.

  • The curves were first generated as a Paint Effects brush - strokeFeatherExoticLarge.mel and then converted to curves - Modify>Convert>Paint Effects to curves.

  • To render this many curves, you will first need to create an override set for the curves. This will enable you to add the following 'Override Attributes' to the curves without having to add them to each individual curve.

A quicker and more efficient way to render multiple curves is to use the Curve Collector.


There are two algorithms for rendering curves in Arnold, Ribbon and Thick. For the main stem you will need to render the curve using Thick mode.

Mode: Ribbon Mode: Thick

The individual barbs look better when rendered as Ribbon mode:

Mode: Thick Mode: Ribbon. More suited for rendering feather barbs.

Ai Curve Width

When the Ai Curve Width is set too high, the curves start to overlap and errors in the sampling occur.

Ai Curve Width:0.01. Curves overlapping. Reducing the Ai Curve width to 0.005 fixes the problem


Adding a ramp texture map to the Opacity of the Standard Hair will soften the edges of the curves.

No opacity Ramp texture connected to Opacity attribute of Standard Hair shader

Ensure that the Ai Opaque attribute is added to the set and that it is disabled in order for the opacity to work properly.


Increase the curve width so that it is at least twice the width of the feather curves (in this case a value of 0.04 was used). Make sure to change the mode to Thick so that the curve appears rounded. The main stem of the feather will require a regular glossy material. Connect an Ai Standard Surface shader to the Curve Shader of the stem curve.

Stem curve rendered as 'Thick' mode Wireframe


Create a Standard Hair shader and connect it to the Ai Curve Shader attribute of the curves set.

Root Color

The images below show the effect of altering the root color.

Root color: White Root color: Black


The images below show the effect of adding a colored circular ramp to the Specular Tint of the Standard Hair shader.

SSS only works with poly meshes and is therefore not supported by the curves primitive.

Visible in Specular Reflections/Transmission

In order to see the curves in glossy reflections and refractions you will need to add the following Override Attributes:

  • Ai Visible in Glossy
  • Visible in Refractions

Ai Visible in Glossy/Visible in Refractions:Off Ai Visible in Glossy/Visible in Refractions:On

Curves are not visible in reflections by default. If you want your curve to be reflected you will have to add the attribute Visible in Reflections to the override set containing the curves.

Curve is not visible in Reflection 'Visible in Reflections' override added to curve's override set

Arnold Set attributes

That concludes this tutorial on rendering curves as feathers. Rendering curves as hairs using override sets is a useful way to create complex looking scenes without the overhead of working with heavy amounts of geometry.

Posted By
  • Arnold
  • Maya
  • Rendering
  • Shading
To post a comment please login or register