Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

UI Text Box
sizemedium
typetip

 There are two ways to add displacement to an object with V-Ray Displacement. One is through material assignment and the other - directly to the geometry. For detailed information, visit the Displacement Tutorial page.

 

UI Paths

...

 

Section
Column
width10%

 

Column
width40%

||mat Network|| > V-Ray > Geometry > V-Ray Displacement

||Select object|| > V-Ray Shelf > Displacement Properties

Column
width40%

||shop out Network|| > V V-Ray Material node Render Elements node > V-Ray > Geometry > V-Ray Displacement

Column
width10%
 

...

Section
Column
width5%

 

Column
width45%

Image Modified

Main options when Displacement is created in the mat Network.

Column
width45%

Main options when Displacement is created in the obj Network

Column
width5%

 

 

Displacement Override – Override This option is available only when displacement is added as Displacement Property to an object. When enabled, it allows displacement override to the whole object with the properties specified in the same tab.

...

Type – Specifies the mode in which the displacement will be renderedis rendered.

Normal – Takes the original surface geometry and subdivides its triangles into smaller sub-triangles which are then displaced. It can be applied for arbitrary displacement maps with any kind of mapping.
2D – Bases the displacement on a texture map that is known in advance. The displaced surface is rendered as a warped height-field based on that texture map. The actual raytracing of the displaced surface is done in texture space, and the result is mapped back into 3D space. The advantage of this method is that it preserves all the details in the displacement map. However, it requires that the object have valid texture coordinates. You cannot use this method for 3D procedural textures or other textures that use object or world coordinates. The displacement map can take any values.
Vector – If using a displacement texture that is not grayscale, V-Ray will convert converts it to grayscale before rendering the displaced geometry. This mode allows V-Ray to use the Red, Green, and Blue channels of the displacement texture to displace the geometry in the U and V directions in addition to the direction of the face normal.
Vector (Absolute) – A vector-type displacement mode in which the texture is interpreted as 0.5-based tangent space displacement map.
Vector (Object) – Only meaningful when a VRayPtex texture is used for displacement, where the texture values represent 0-based displacement in object space. If mesh information is stored in the Ptex file, V-Ray can also displace correctly mesh deformations.

Flip Green / Blue Channels – When enabled, the Green and Blue channels of the supplied texture map will be swappedare swapped

Generate – Specifies how the resulting triangles of the displacement algorithm will be inserted are inserted into the rayserver.

On the Fly – Dynamic
Pre-Tesselated – Static

Amount –The amount of displacement for white areas of the displacement map. If Use Global Settings is enabled, this value is multiplied by the global displacement Amount option.  A value of 0.0 means the object will appear appears unchanged. Higher values produce a greater displacement effect. This can also be negative, in which case the displacement will push pushes geometry inside the object.

Shift –Specifies a constant which will be added is added to the displacement map values, effectively shifting the displaced surface up and down along the normals. This can be either positive or negative. For more information, see the Displacement Shift example below.

Keep Continuity – When enabled, V-Ray will try tries to produce a connected surface. Use it when you get splits (usually around sharp edges) in the displaced geometry. For more information, see the Keep Continuity example below.

Water LevelGeometry below this displacement level threshold will be is clipped away. This can be used for clip mapping a displacement map value below which geometry will be clippedis clipped. For more information, see the Clip Mapping example below.

...

Use Global Settings – When enabled, the global Displacement quality settings from the V-Ray Renderer will be used are used.

View Dependent – Determines if view-dependent tessellation is used.  When enabled, Edge Length determines the maximum length of a subtriangle edge, in pixels. A value of 1.0 means that the longest edge of each subtriangle will be about is about one pixel long when projected on the screen. When  View-dependent  is off, Edge length  is the maximum subtriangle edge length in world units.

...

Render As Subdivision  When enabled, the object will be subdivided is subdivided during rendering.

Preserve Map Borders – Specifies how to handle subdivisions of UV coordinates at UV seams. The possible values are:

...

Classic Catmull-Clark – When this option is enabled, V-Ray will use uses the Classic Catmull-Clark method for subdividing the mesh instead of the hybrid one used by default. This option should be enabled only if the mesh is composed entirely of rectangular faces or it will not does not work.

 

2D Settings

...



 

Resolution – Determines the resolution of the displacement texture used by V-Ray. If the texture map is a bitmap, it would be best to match this resolution to the size of the bitmap. For procedural 2D maps, the resolution is determined by the desired quality and detail in the displacement. Note that V-Ray will also Ray also automatically generate generates a normals map based on the displacement map, to compensate for details not captured by the actual displaced surface.

...

Filter Texture – When enabled, the texture map will be filtered is filtered before the actual displacement takes place.

Filter Blur – Specifies the amount of blur that will be applied is applied to the texture before the displacement takes place. 

Multi-Tile – Enables or disables support for tiled textures (UDIM/UVTILE) when generating 2d displacement.

Anchor
vector
vector

...


Example: Vector Displacement


This example shows the effect of the Vector (vector displacement) option in more detail.

The first image shows complex geometry on the left. This geometry was used to create a vector displacement map. The second image shows the resulting displacement map, where the red, green and blue components define displacement vectors in the texture UVW space. The final image shows the vector displacement map applied on another object through the Displacement material node.

Section
Column
width5%

 

Column
width30%

 

Image AddedA piece of complex geometry, and a simple version
with a VRayVectorDisplBake material.

 

Column
width30%

 

Image Added
The displacement map, computed by texture baking.
The result is saved into an .exr file (a .png file is shown here).

 

Column
width30%
Before after
afterLabelON
beforeLabelOFF
Panel
borderStylenone

Image Added

Panel
borderStylenone

Image Added

The displacement map applied on a different geometry through
the Displacement node with vector displacement.

 

Column
width5%

 


Anchor
shiftParameter
shiftParameter

...

 

Example: Displacement ShiftDisplacement Shift

 

Note that the Displacement Shift parameter is an absolute value in world units. If you change the Displacement Amount, you will probably need to adjust the Displacement Shift too.

...

Section
Column
width5%25%

 

Image Removed  Displacement Shift = -5.0

Image Removed Displacement Shift  = 0.0

Column
width30%
Column
width30%
50%
Image slider
minLabel-10.0
startIndex2
maxLabel10.0
Panel
borderStylenone

Image Added

Shift = -10.0

Panel
borderStylenone

Image Added

Shift = -5.0

Panel
borderStylenone

Image Added

Shift = 0.0

Panel
borderStylenone

Image Added

Shift = 5.0

Panel
borderStylenone

Image Added

Shift = 10

Column
width30%
Image Removed Displacement Shift  = 5

.0

Column
width5%25%

 

 

Anchor
edgeLength
edgeLength

...

 

Example: Edge Length

 

 

This example shows the effects of increasing the Edge length parameter. In this example View-dependent is enabled, so Edge length is expressed in pixels. In the examples, the closeup view is a blow-up rather than a zoomed view. This means that Edge length in the closeup view refers to pixels in the original image, not the blow-up rendering. 

The image below was rendered with a Edges Map | VRayEdgesTex  V-Ray Edges map in the Diffuse slot of the material , so you can see to show the original triangles of the mesh. Additionally, we turned on the Faceted option in the VRayMtl. Now, V-Ray will not only smooth smooths the surface normals, but will also automatically apply applies a normals map that represents the normal of the perfect displaced surface, which will make makes the surface look a lot more detailed that than it actually is.View-dependent is turned on, and it refers to pixels in the original image, not the zoomed-in image you get with a blow-up rendering. This is why we were able to do a blow-up rendering to see the individual subtriangles better. Click the images for a larger view:

 

section

Image Removed
Edge Length 2.0

Image Removed
Edge Length 2.0 Close up view

Image Removed
Edge Length 5.0

Image Removed
Edge Length 5.0 Close up view

Section
Column
width50%10%
 Image RemovedEdge Length 0.5
Column
width50%
Image Removed
Edge Length
Image slider
minLabel
0.5
Close up view
columncolumnwidth50%
startIndex
2
width50%
maxLabel10
 Image Removed
Edge Length 1
.0
Panel
borderStyle
none

Image Added Image Added

Image Removed

Edge

Length 1.0 Close up view
Section
Column
width50%

length = 0.5

Panel
borderStylenone

Image Added Image Added

Edge length = 1.0

Panel
borderStylenone

Image Added Image Added

Edge length = 2.0

Panel
borderStylenone

Image Added Image Added

Edge length = 5.0

Panel
borderStylenone

Image Added Image Added

Edge length  =

Column
width50%
Section
Column
width50%
Column
width50%
Section
Column
width50%
Image Removed
Edge Length

10.0

Column
width50%10%

 

Image Removed
Edge Length 10.0 Close up view

 


Anchor
keepContinuity
keepContinuity

...

The Keep Continuity option is useful for objects with disjoint normals on neighboring triangles, usually because of different smoothing groups. In the middle image below you can see the edge splits produced by disjoint normals. Using the Keep Continuity option avoids this problem. This option will also help to produce a smoother result across material ID boundaries for objects with multiple materials. 

Section
Column
width5%25%

 

columnwidth30%columnwidth
Column
width30%50%
Image slider
startIndex1
Panel
borderStylenone

Image Added

Image Removed

No displacement

Panel
borderStyle
none
Image Removed

Image Added

Keep

Continuity

continuity = disabled

 
Panel
borderStyle
Image Removed
none
30%

Image Added

Keep

Continuity

continuity = enabled

 

Column
width5%25%

 


Anchor
clipMapping
clipMapping

...


Example: Clip Mapping


Note: The Water Level parameter level parameter is also absolute in world units. If you change the Displacement Amount and/or Displacement Shift, you will probably need to adjust the Water Level to get the same effect. For this example, the Displacement Amount parameter is  Amount is set to 5.0 and the Displacement 0 and Shift parameter is set to 0.0. Note that when Water level reaches Amount + Shift, all geometry is clipped.

Section
Column
width25%

 

columnwidth25%columnwidth25%columnwidth25%
Column
width50%
Image Removed
Water Level =
Image slider
minLabel0.0
startIndex2
maxLabel5.0
Panel
borderStylenone

Image Added
Water level
  

0.0 (no clipping)

Panel
borderStyle
none

Image Added

Image Removed

Water

Level

level =

 1

 1.25 

 
Panel
borderStyle
none

Image Added

Image Removed

Water

Level

level =

 2

 2.5

 

Panel
borderStyle
none
Image Removed

Image Added
Water

Level

level =

 3

 3.75 

Panel
borderStylenone

Image Added

Water level = 5.0 (all geometry is clipped)
Column
width25%

 


Anchor
textureBoundaries
textureBoundaries

...

This example shows a plane mapped with a displacement map that has negative values. With the default boundaries for the displacement (from 0 to 1) we are unable to see the geometry displaced in the negative direction. However, once we set Displacement bounds to Explicit and set Min valueBounds and Max valueBounds to -1 and 1 respectively, we can see the displaced geometry in both the positive and negative direction.

 

Section
Column
width10%25%

 

Image Removed Min value  = 0 ; Max value = 1

Column
width40%
Column
width40%
50%
Before after
afterLabel-1/1
beforeLabel0/1
Panel
borderStylenone

Image Added

Panel
borderStylenone

Image Added

Image Removed Min value  = -1 ; Max value = 1

Column
width10%25%