= CVEX shaders for fur = For a basic overview of CVEX, see the [CVEX Type|/nodes/vex/cvex] help. There are two ready-made CVEX shaders designed for fur. The [fur density map shader|/nodes/shop/fur_density_map] which allows you to control the density of the fur based on a texture map, and the [fur style shader|/nodes/shop/fur_style] which allows you to control the thickness, shape, and frizz of the fur. You can also create your own CVEX shaders to specify exactly how you want the fur to look. # In the SHOP Network you created in [Basic fur setup|basicsetup], create a VOP CVEX SHOP. # Double-click the [VOP CVEX SHOP|/nodes/shop/vopcvex] to dive into it. # Press ((Tab)) and hover your mouse over the __Workflow__ category. You can use CVEX shaders to control the skin or the guides. * If you want to modify attributes on the skin, you will need to use a __Fur Skin Global Variables__ node and a __Fur Skin Output Variables and Parameters__ node. * If you want to modify attributes on the guides, you will need to use a __Fur Guide Global Variables__ node and a __Fur Guide Output Variables and Parameters__ node. # Append nodes between the global variables and output variables nodes to modify attributes. For example, you can add a parameter to `P` to modify point positions. [Image:/images/fur/cvex_nodes.png] NOTE: Once you finish creating your CVEX shader, don't forget to point to it from the [Fur SOP|Node:sop/fur]. == Example == You could use CVEX to assign colors to the root and tip of your fur. # In your [VOP CVEX SHOP|/nodes/shop/vopcvex], create a __Fur Guide Global Variables__ node. # Create a [parameter|Node:vop/parameter] node, name it `root`, and change the __Parameter Type__ to __Color (color)__. On the __Color__ tab, set the __Color Default__ for the root. # Create another [parameter|Node:vop/parameter] node, name it `tip`, and change the __Parameter Type__ to __Color (color)__. On the __Color__ tab, set the __Color Default__ for the tip. # Create a [Color Mix|Node:vop/colormix] node. This node computes a blend of its two color inputs and outputs the result. # Wire the `root` output of the root [parameter|Node:vop/parameter] node into the `primary` input of the [Color Mix|Node:vop/colormix] node # Wire the `tip` output of the tip [parameter|Node:vop/parameter] node into the `secondary` input of the [Color Mix|Node:vop/colormix] node. # Wire the `hairdist` output of the __Fur Guide Global Variables__ node into the `bias` input of the [Color Mix|Node:vop/colormix] node. # Create another [parameter|Node:vop/parameter] node, name it `Cd`, and change the __Parameter Type__ to __Color (color)__. Also, set __Export__ to __When Input is Connected__, and turn on the __Invisible__ checkbox. # Wire the [Color Mix|Node:vop/colormix] node into the `Cd` node you just created. [Image:/images/fur/cvex_example.png] # Click your object in the path at the top of the [network editor|/ref/panes/network] to return to the object level. # In the __Guide Shader__ parameter on the [Fur SOP|Node:sop/fur], click the [Icon:BUTTONS/chooser_node] node chooser button and choose your CVEX shader from the tree.