13
$\begingroup$

I have been trying to achieve a true mesh displacement on meshes for quite some time, without ever getting it to work.

If I understand it correctly, this experimental feature would allow me to easily displace the vertices of a mesh - or to create new mesh vertexes where needed - to get a displaced mesh in the result, based off an image, but without using a bump map (simpler, faster?).

This all sounds very exciting in theory, but I am having a really hard time finding examples or tutorials that are both recent and whose links function. So I think there is the need for a question here which will call upon detailed and recent answers to bridge that gap.

I'll start with a simple ico sphere:

enter image description here

Then, following Aldrik's answer here, I will change the Feature Set to the Experimental one:

enter image description here

I then add a pink granite image to the mesh:

enter image description here

Mark Seams, Unwrap, add image in the UV Editor:

enter image description here

enter image description here

and finally, in the Object Data panel, change the Displacement method from Bump to True as explained in Aldrik's answer:

enter image description here

no result yet:

enter image description here

if I click "Use Subdivision" this is what I get (so I won't click it right now):

enter image description here

Looking into the Node Editor, nothing seems to have changed with the Displacement of the mesh:

enter image description here

so I tried to replicate the node setup seen in the first image of this similar question (Linear isn't an option, Clip, Single and Repeat are):

enter image description here

... but the result is a white ICO Sphere, similar to Image 1.

So, can the "Experimental Feature Set" be used to create actual displacement, and modify a mesh?

This is what I'm trying to obtain - but with the image of the texture actually displaying on the mesh (image from here):

enter image description here

.blend file:

$\endgroup$
  • $\begingroup$ related: blender.stackexchange.com/questions/34108/… $\endgroup$ – cegaton Apr 10 '16 at 4:08
  • 1
    $\begingroup$ I don't recommend true displacement in blender yet. Here is why: blender.stackexchange.com/a/45874/7777 $\endgroup$ – Jaroslav Jerryno Novotny Apr 10 '16 at 16:42
  • $\begingroup$ Thanks Jerryno for highlighting the limits of this technique. In my case it is perfect for what I'm trying to do, and I think it is very quick compared to creating bump maps with crazy bump, etc. If you have a quick and easy way of getting the same results that is supported and not experimental, feel free to post it in a comment. $\endgroup$ – MicroMachine Apr 10 '16 at 19:44
15
$\begingroup$

A UV Sphere is a better mesh to try this feature on (is made out of quads, and not triangles like the Ico Sphere and should subdivide better).

You need to plug the displacement texture to the displacement socket on the material output.

Render Feature set has to be in Experimental.

Displacement in the mesh section has to be set to True or Both.

To preview, you have to be in Rendered Mode in the 3D viewport. Other Shading modes will not reflect the displacement. Any changes made on the settings will not refresh in real time, you have to exit Rendered Mode (go to Solid or Wireframe Mode) and re-enter Rendered Mode to update (alternatively you can press the Tab key twice).

The more subdivisions you have on your mesh, the more detailed the displacement, but it will also have an impact on the performance of your computer.

Remember that this is still an "experimental" feature, so expect some unexpected results...

enter image description here

enter image description here

enter image description here click on the image to enlarge

In my opinion, given that this feature is largely experimental, I'd still use a displace modifier. Is more predictable, responsive and easier to control. The results can be previewed in real time in solid and texture mode as well. Also, setting some subsurf modifiers in the right order can make things a lot nicer looking, and with a lot more control on the number of subdivisions. You can always apply the modifiers to make the displacement permanent, which you couldn't do using the displacement node.

Here's the same displacement, but with a displace modifier instead:

enter image description here

click on the image to enlarge

UPDATE: The option was under the Mesh properties at Blender version 2.76 but in more recent versions it has been moved to Material Properties > Settings > Displacement.

enter image description here

$\endgroup$
  • $\begingroup$ Thanks! But could you make an answer where the displacement comes from an image, say the same image as the surface (instead of procedural noise of wave)? Having two identical "Image Texture" nodes and plugging one into Surface and one into "Displacement doesn't work... $\endgroup$ – MicroMachine Apr 10 '16 at 4:23
  • 1
    $\begingroup$ @fabriced Do not use Use Subdivision $\endgroup$ – cegaton Apr 10 '16 at 5:37
  • $\begingroup$ This is awesome! Best answer on this topic yet I think... Great visual references as well (that last cube is pretty cool!) Thanks a lot! $\endgroup$ – MicroMachine Apr 10 '16 at 5:50
  • 2
    $\begingroup$ The option was under the Mesh properties at Blender version 2.76 but seems to have moved to the Material properties at 2.78. $\endgroup$ – Rich Sedman Jan 15 '18 at 21:31
  • 2
    $\begingroup$ @RichSedman answer updated. Thanks for pointing it out. $\endgroup$ – cegaton Jan 15 '18 at 21:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.