Page 1 of 1

Rock Generator

Posted: 10 Dec 2011, 20:54
by fabricio.chamon
Hi, this is a quick take on Sascha Henrichs' procedural rock modeling workflow (http://vimeo.com/10163233)



features:

- 3 noise levels:
level 1: cellular (overall rock shape)
level 2: fractal (erosions)
level 3: turbulence (high frequency displacement)

- spatial UVs
- render tree rock shader compound

can be applied on empty polymeshes (cube primitive) or on a predefined volume mesh (check "Use Base Mesh" inside the compound)
can be used to generate lowpoly game assets (ao/normal maps) through ultimapper.

tip: if the mesh has interpenetrations at higher resolutions, try adding more lvl1 smooth.

2do: blended box maping to handle uv seams when using textures.

let me know about any suggestions.

Re: Rock Generator

Posted: 10 Dec 2011, 21:06
by Memag
Sweet compound!
Thank you.

Re: Rock Generator

Posted: 11 Dec 2011, 19:41
by iamVFX
What a gorgeous looking rocks! ^:)^ Thank you, Fabricio!

I'm a newbie to the modeling side of things, is there any way to bake highly tessellated polygon object into bump\normal\displacement maps? Thanks!

Re: Rock Generator

Posted: 12 Dec 2011, 00:10
by fabricio.chamon
...is there any way to bake highly tessellated polygon object into bump\normal\displacement maps?
Sure! That's what ultimapper is for. Here's a step-by-step example:

1- Create a basic rock. In this example I'm using an icosahedron as the base mesh to sculpt the overall volume of the rock. Apply fc_rock on top of that.

2- now duplicate your object, set different mesh resolutions for the low poly and hi poly models (I'm using low=0 and hi=7)

Image

3- set up nice UVs to your object. try to put the seams at sharp angles, so that they are less noticeable. For this quick setup, I've used a basic spherical projection.

4- align both objects so that they are centered (in this case simply move to 0,0,0)

Image

5- select the lowpoly mesh and apply a ultimapper property.

Image

6- on the ultimapper ppg, pick the high res mesh and check what kind of map you want to export. Also, be careful when choosing the quality/resolution of your maps. Try to be reasonable because exporting times can go through roof here. Choose the directory where the maps will be saved, click "compute", then "generate".

Image

7- lastly on the "Preview Shader Tree" ppg tab, click create preview. Softimage will apply an openGL realtime material to your lowpoly rock and display it on the viewport. In my case, as I didn't generated any diffuse map, there's the noicon image plugged on the ultimap_preview rendetree node. I changed it to a neutral grey image, applied to color/specular/ambient sampler. Now open the shader node and play with the bump factor. here's a comparision between the hi and 3 different low poly meshes:

Image

You can note a slightly better high frequency detail on the surface or rock #2, that's because its normal map have higher resolution (1024px) whereas the others have 512px maps. On the other hand you can see that rock #3 has better silhouette and resemble more the original hi-res shape, because it has more polygons. So in the end its all about a nice balance between mesh density x map resolution x lighting conditions x distance from camera.

that's it. I'm totally not an expert in games/realtime assets but this should give you a good start.

Re: Rock Generator

Posted: 12 Dec 2011, 09:27
by Rork
nice!! :-bd

Will play with that one soon. With the other ICE tools, we're getting some nice terrain setups to fiddle with :)

thanks for sharing!! :ymparty:

rob

Re: Rock Generator

Posted: 12 Dec 2011, 16:45
by druitre
Nice one, thanks

Re: Rock Generator

Posted: 12 Dec 2011, 17:10
by ActionArt
Fabricio, you're on fire! Great stuff! That looks to be very handy.