The Infinite Rock Builder Procedural Shader For Cycles

by Nick Sayce Designs in Materials, Shaders, Textures


The Infinite Rock Builder, in short, is the quickest, easiest, most customisable, low memory eating and detailed way to make rock formations, simply by adding the procedural material to a subdivided mesh.

 

At some point, if you haven't already, you'll make an outdoor scene and find yourself needing an RGB texture of a rock or cliff face. You''ll come across the problem of trying to scale them without repetition and the fact that each RGB texture with all it's maps uses roughly 1 GB of memory for a 4K texture. If you can't find the right texture or material, you'll probably move on to sculpting one which is time consuming and difficult.


I've done all of the above and sculpting was always a last resort as so much detail is required to make a convincing rock formation that I find difficult to achieve with the sculpting tools. In the below Avatar inspired image, I sculpted all of the cliffs and owing to how many subdivisions I needed to get detail into them, this was about as many as my system could handle using an RTX 2060 without crashing at render. Each one took around half an hour or longer including the painting so you can see how much time I spent on them!



With The Infinite Rock Builder, I could have made each one in minutes and used roughly 2/3 less memory.


The Infinite Rock Builder is a procedural texture that comes with an infinite amount of customisation for making rock and stone surfaces to be used in Cycles, be it boulders, rocky ground or cliff faces. With the Infinite Rock Builder, you just apply the material and use any of the controls to customise the rock surface to your heart's content. It comes with 10 individual rock presets, all of which have their own controls to customise them further, and on top of the 10 preset shapes, there are also 6 different effects and several masks to help make the formations look more natural and eroded. Because the material is based on maths and not image data, it uses up to 2/3 less memory than a standard 4K RGB texture freeing up your memory for more complex scenes without sacrifice. The other advantage over an RGB texture is that it will scale infinitely without repetition, so creating a huge cliff face can be done in minutes with the IRB instead of hours.




You can also plug in any of your own RGB textures, the nodes are already set up for convenience and you can mix them in separately; use all of the IRB controls with a mixture of custom RGB texture color, bump and roughness using their own individual slider controls. 


Truly, an infinite amount of rock or stone formations and surfaces can be created with the IRB, it's unlikely you'll make the same formation or surface twice! With its ability to scale infinitely, there's no need to worry about repetition anywhere on the mesh as everything is created procedurally. 



A combination of The Infinite Rock Builder and The Infinite Surface Builder were used to create this scene.

I have created an extensive 7 part tutorial series for the IRB at the link below. The IRB comes with a pdf manual that covers every control with clear visual examples.

https://www.youtube.com/playlist?list=PL_8QZ-hJT-uLWP-5qyNHjttiJ40Q_haC_ 


This image was created using three of the four Infinite Builders;
The IWB for the walls, The IRB the floor and The IMB for everything else with No RGB textures.



This image was created using the Infinite Rock Builder for the cliff face and the Infinite Metal Builder for everything else and again, no RGB textures.



THE INFINITE ROCK BUILDER V 2.0 UPDATE

Hi all!

I've put The Infinite Rock Builder v2.0 in the downloads section for you to grab. It's the latest version of the IRB and it's been through quite a few changes. All of the functionality is the same, just the way you access it has changed quite a bit, with good reason.


Here are all the improvements;


  • The UI has been dramatically improved. The control area is much easier to navigate as more controls are visible in one screen.
  • Everything has been put into their own custom node groups which means that all of their filter controls are contained on their own respective node enabling you to tab between them, as opposed to needing to click on every value input in order to change them. This should speed the workflow up nicely and means far less clicks and movement required.
  • Owing to the new layout and the introduction of Node Groups, there's no longer a need for so many wires and connectors. What this means is that it's a mess inside the groups, but it's made the control area cleaner and has had a significant increase in Shader Editor performance. Thankfully, none of the controls you'll ever need are grouped, they're all in the Control Area.
  • Every formation and effect now has a Random Shape control. I found myself adding effects just to get a different shape when copying a plane to make a larger shape when I was using a formation without a random option. Simply put in a value and the shape will change; I'd recommend numbers in large increments. I usually start a 100, then try 800 etc.
  • The Random Indents has been changed to Random Flats as I when I wanted these flat areas, I was throwing a load of effects in to push the geometry out as far as possible, but this had adverse effects on the formations underneath. Now you can incorporate it without overblowing the displacement.
  • I've moved the default position of the controls as when I was adding a material to something else, I had to first find where in the Shader Editor the nodes for that material were. Now they should be centred so switching between the IRB and other materials doesn't become a hunt for the missing node.


Feel free to let me know how it goes for you, it's made a huge improvement for me!



LATEST UPDATE AND NEW FEATURE

Hi all,

I've finished the new tutorials for the latest version and they're available here;

https://www.youtube.com/playlist?list=PL_8QZ-hJT-uLWP-5qyNHjttiJ40Q_haC_ 

I also managed to figure out an effect I've been trying to figure out since I started building the Infinite Builders and I've implemented it into the IRB as well as the ISB.

In the IRB, it allows you to distort Crack 1 and roughen up its edges. I've always had an issue with how straight and angular Crack 1 was; it was unrealistic, but it's a limitation with the Voronoi texture I  used to make Crack 1. Crack 0 has a distortion option already, I just needed some trickery to get similar control with Crack 1. Have a look at the images below, you can see the clear difference it makes and I think it gives the cracks a much more natural look. It's an extreme example, but it's just to clearly see the new effect in action. 



I also fixed the issue I found yesterday with the Horizontal Bands. Thankfully, the only thing that needed to change was to change the mapping of that effect to be based on the UV's instead. What this means is explained in the manual and also at the end of Part 4 of the tutorial series, though in short, if you're planning on using the Horizontal Bands colour or displacement effect, when you've finished making your shape, select all of the mesh in edit mode, press U and select 'cube projection'. Everything else is still Object based as trying to make them UV based caused absolute havoc and I'm still glad I've not switched all of them over.

The latest file, version 2.1 is in the downloads and I'll be updating the manual accordingly.

Rock on y'all.