I've just come across this procedural workflow breakdown:
http://unigine.com/articles/130605-procedural-content-generation/
And i'm fascinated how they're using noise generators to create heightmaps and then displace those heightmaps into surfaces. However, i'm curious about the details of the displacement: how can this be done in zBrush? And what about the tiling?
Replies
Something like this can be done in Zbrush, just not as easily as in Filter Forge or Substance Designer. Zbrush is not a node-based system, so when you make a sculpt you are making a unique design.
But with node-based systems, after you make the node layout you can press a button to make an instant variation of it, by changing the underlying patterns.
For example, this is a simple one I made.
https://filterforge.com/filters/1543.html
The "Filter Controls" at bottom right shows a list of the things you can change to make new variations, very quickly.
There are ways to tile patterns in Zbrush
http://wiki.polycount.com/wiki/EnvironmentSculpting
In Zbrush you can easily extract height maps, to use for displacement. But you can't easily change your sculpt into an entirely new pattern, while keeping all the original levels of detail.
The benefit of Zbrush though is you have total control. You can make exactly the pattern you want. Node-based editors make this a bit harder, they work better with procedural patterns. You can feed it a unique pattern, and have it add details to that, but it's not as easy to edit specific details.
I see they're using the rock cliffs heightmap, for example, to create those very good-looking cliff models. How did they do it? Apply a displacement map to a cylinder? And how is it possible to do that?
Displacement in those programs has been explained many many times before.
If you don't understand something, after following the instructions in that link, then please do ask, and I'll be glad to help (along with many others too). We want to help, but you need to learn too, and trust me this is the best way. Put your brain in gear.
http://unigine.com/articles/130605-procedural-content-generation/full/19_oilrush_canyons_side_heightmap.jpg
How you can create the circular geometry found here:
http://unigine.com/articles/130605-procedural-content-generation/full/18_oilrush_canyons.jpg
Are they creating a low-poly mesh with the desired shape and using the heightmap to create fine detail, or is it something else? That's what i'm looking for.
These aren't being done procedurally (the geometry anyway), the talk about re-topologizing the icebergs. and basically they are using displacement maps on the sides of those objects to create geometry and then welding the sides to the top.
They mention possibly doing actual procedural 3d in Houdini, but they aren't doing that here. Basically it looks like they are generating procedural textures with filter forge, to create a displacement map where they can preview a bunch of different rough shapes, and then choose the ones they like to iterate upon (re-topologize) then they have some more specific height maps (cliff face, rocks etc..) which they use to add more detail.
It looks like you didn't read the article, as they explain exactly this process, and with pictures, in the icebergs section.
How do they make the high-poly tile after displacement? Even if the original heightmap used for displacing was seamless, the conversion to mesh would mess with the borders, right?
Regarding the low-poly meshes, it wasn't clear if it was hand-made or generated.
If you download their iceberg displacement map (clicking on the thumbnail goes to a 2048x1024 jpg) it is not seamless left to right. That's strange, since Filter Forge makes tiled maps by default, so in theory it should be perfect, but I guess they didn't set this up correctly?
Here's their map being displaced in 3ds Max. I duplicated the model to put it next to itself, and I offset the UV so the map should be seamless where the models meet (blue arrows).
Red arrows point to the edge of their map (where it doesn't tile). Blue arrows point to the edge of the geometry (where it should tile, because that edge is inside the same map).
They probably didn't worry about the seam because they cleaned up the models after displacement. Anyhow if the map was seamless then each iceberg would have to be tiled in whole units, which wouldn't look very good. Some would look thin, others would look fat.