---
title: "ZBrush Vector Displacement"
canonical: "https://rmanwiki-27.pixar.com/space/RFM27/544540797/ZBrush%20Vector%20Displacement"
format: markdown
---
### Export OBJ and OpenEXR from ZBrush

- Shift+d to step down to the **lowest subdivision. **Lion Sculpted by Olivier Drion.


- Hit the Switch button in** Morph Target ** **to switch to the original model**.  If you don't have a Morph Target setup, please consult ZBrush documentation on how to set up a Morph Target.

![image](media://111a46aa-02f6-4322-a824-4f44637f949d)

Hit the Switch button in** Morph Target ** **to switch to the original model**.  If you don't have a Morph Target setup, please consult ZBrush documentation on how to set up a Morph Target.

![image](media://48352cb1-890a-4a1c-b9fd-5ee3a208b1d8)

- In Preferences, Import/Export, Vector Displacement Map, set the **Tangent FlipAndSwitch to 43.**  There are 48 different vector displacement because a red channel for a renderer may be up while down for the another renderer.  RenderMan is 43.

> ⚠️ Recent changes meant a change from Tangent FlipAndSwitch 41, if your displacement is not correct, you may need this setting rather than 43.

![image](media://5c5cbf3c-8cbb-4f7a-8ec7-06c182531262)

- On the Tools, Vector Displacement Map, set *vd Tangent* on, set *vd 32 Bit* to export a 32-bit map otherwise it is 16-bit, set *vd SUV* for smooth UV to on, *vd Normals* to on.

![image](media://fe56ea7b-894a-4f24-87d7-ec7c34cebb81)


- Click on CreateAndExport VDMap to export the maps and OBJ. The maps will be exported as OpenEXR.

### Import OBJ and Add Subdiv Scheme

> ⚠️ For some subdivision surfaces, it may be helpful to add the attribute "Dice Watertight" to resolve seam issues. This may incur a memory overhead so it is not on by default.


- Import the OBJ you just exported from ZBrush.  For its shape node, add **Attributes|RenderMan|Subdiv Scheme:**

![image](media://46f28ca4-08d1-42fb-b810-c16699d36dbb)

### Assign Displacement Shader

- Create a **PxrTexture** node. Set the Filename to your exported ZBrush EXR map. Keep all parameters at their defaults.
- Create a** PxrDispTransform** node. Set Displacement Type to **ZBrush Vector** and Vector Space to **Tangent**.

![image](media://c2902d88-361f-488d-8e9f-95d552f88efe)


- Create a **PxrDisplace** node (this is the displacement shader that actually displaces your surface).
- Connect PxrTexture's output Result RGB to PxrDispTransform's Disp Vector.
- Connect PxrDispTransform's Result XYZ to PxrDisplace's Disp Vector. Your graph should look like this:

![image](media://30850a1d-144b-46d0-9b1e-341d080e40b8)


- Add [PxrSurface](https://renderman.atlassian.net/wiki/pages/createpage.action?spaceKey=RFM24&title=PxrSurface), assign it to the model and add some [lights](https://renderman.atlassian.net/wiki/spaces/RFM27/pages/544541369), set the displacement bound appropriately, and render!

![image](media://44d62439-0076-4181-8fe5-fc96e79aa637)



![image](media://198f2701-ce71-4c44-ae6f-6f9ea0fed28c)

> ℹ️ ### Maya Project
> ℹ️ 
> ℹ️ Download a Maya Project and test the official Zbrush vector displacement scene.
> ℹ️ 
> ℹ️ [Download RfM](https://renderman.atlassian.net/wiki/download/attachments/21037457/zbrush_Vector_Displacement.zip?version=1&modificationDate=1709251084079&api=v2&download=true) 
> ℹ️ 
> ℹ️ Or a rib file...
> ℹ️ 
> ℹ️ [Download RIB](https://renderman.atlassian.net/wiki/download/attachments/21037457/VD_Zbrush_Diagnostic.rib.zip?version=1&modificationDate=1709251088871&api=v2&download=true)