Organic HARD SURFACE modeling technique

Organic Hard Surface Modeling Trick

There is no doubt that the new Live Booleans system in ZBrush 4R8 is a game changer. There are a number of ways in which you can use this new feature, but surely one of its strengths is hard surface modeling. However, there are other ZBrush Processes and tools that could be more effective to achieve a certain ‘Hard surface’ look. For instance, if you are planning to bake maps and keep the polygon count low, a retopology approach with edge creasing might be better, you could also use Dynamesh with masking and polish brushes to create a quick concept, etc.

One of my favorite hard surface modeling styles involves a mix of paneling and organic shapes. So I created a few images (like the helmet image on the right) to illustrate the benefits of the ZBrush technique I’m about to show you. In the following image (below), I have highlighted a few areas with colours… have a look at the render and see if you can guess what processes or tools I used to create the various parts. Click on the tab called ‘Answer’ to see which ones I actually used.

Try to identify the ZBrush features I used to create the highlighted areas… ZModeler? Paneloops? some repotoplogy techniques? maybe just Dynamesh with hPolish?

If you said: “A single IMM brush” then you are correct! the entire helmet was created with a single IMM brush (available in this guide’s resources) with a similar approach to the ‘kitbashing’ technique but with an additional layer of control.

The process of designing and sketching new ideas in 3D is always the most exciting for me. This is also the most important part of the longevity of the project, I think. A good solid concept design will probably keep me motivated and help me go through the most tedious and repetitive parts of the production stages of a new piece.

This is a technique that I would use as a quick way to generate concepts and develop the look of a new project, so what I’ll be showing you is basically a sketching technique for hard surface modeling. However, with a clever setup, this method can be used to create shapes that don’t need much refinement and can be used in your final model. What I like about this technique, is that you can generate a lot of designs fairly quickly and that you can adjust the shapes on the fly.

Software Used
ZBrush 4R8
You'll learn...
About the projection slider from the brush modifiers, and how to use this feature to create ‘organic’ hard surfaces. This technique is very simple but can be a great way to produce a concept or even the blocking of a more refined piece.

Resources

  • 1 Simple base mesh
  • 1 custom IMM brush

So here is the trick…

As I mentioned, this guide is to show you a very cool way to sketch interesting ideas for mech-type characters in ZBrush, what’s even better, is that it doesn’t involve multiple steps or require much setup. All we need is a very simple base mesh and cool IMM brush:

The mesh will serve as the platform to create or build our design and more or less determine the overall shape. The IMM brush will give us the additional geometry we need to create interesting shapes around the base mesh. This process is very similar to the ‘kitbashing’ technique, but keep reading… you’ll see why this method is slightly different in a second.

If we take an IMM brush, even a simple one like IMM Primitives, and we start dragging and inserting pieces over a mesh we can probably come up with something that looks interesting. However, what I’d like to do with the base mesh, is maintain the organic nature of the head as I insert hards surface objects with the custom IMM brush. So the trick comes from a slider in the brush palette called ‘Projection Strength’ in the modifiers subpalette.

By default, it should be at ‘0’ but if we crank it up all the way to 100, ZBrush will take into account the shape and surface of the base model and deform the geometry you are inserting with the IMM brush. Take a look at this examples:

Projection Strenght at 0

Projection Strenght at 100

With these settings, you can take a very simple panel and insert it into your model to make it follow the curvature and shapes you set in your base mesh (keep the base mesh simple, it can have any shape, not necesarily a ‘head’ but make sure it is smooth).

Things to avoid…

There are a couple of things you should keep in mind. The projection will take into account everything that is underneath the point you click and drag to insert the mesh. So, if you drag a mesh that is bigger than the underlying mesh you’ll get things like this:

ZBrush is trying to project the inserted mesh into “empty space”

Also, if you insert a mesh and then try to insert another one that overlaps a bit with the previous one, you’ll find problems like this:

This has to do with the variation of the angles in the base mesh (as the inserted geometry is aligned with the normal of the target polygon). Every mesh you insert is now part of the base mesh and it creates additional angles that the second mesh is trying to adapt to… This will make more sense once you try the workflow for this technique.

One last thing to remember when using this technique is that the inserted mesh from the IMM brush, needs to have enough geometry to deform properly over the mesh, otherwise you’ll end up with something like this:

The workflow

So here are a couple of key things I like to do when working with this tool:

  1. Keep the base mesh separate (split every inserted piece).
  2. Use very simple forms in the IMM brush.
  3. Make sure the shapes in the IMM brush have enough geometry.
  4. Tweak the depth of the IMM mesh (from the Brush Palette)
  5. Assign a hotkey to the ‘Split Unmasked points’ button (Ctrl+Alt click on the button and immediately press ‘9’ for example)

If you want to read more about customising the ZBrush UI and assigning custom hotkeys, here is a post about it.

Alright, we are all set. I have assigned the number ‘9’ in my keyboard to the ‘Split Unmasked points’ button, I tweaked my IMM brush to change the depth of the brush and I double checked to make sure I have enough geometry for each piece. You can create your own base mesh and IMM brush or download the resources for this guide (link on the right sidebar of this post).

  1. Now, it is just a matter of dragging a mesh from the IMM brush on the base mesh.
  2. Use the Gizmo 3D to adjust its position and scale if necessary.
  3. Hit your hotkey for ‘Split Unmaskedpoints’ (the number 9 in my case) to separate the inserted mesh into its own subtool.
  4. After splitting the inserted mesh, you should have the base mesh subtool selected so you can…
  5. Repeat the process.

Here is the process following and repeating the steps for a couple of pieces:

Once you are done with your ‘projected meshes’ you can use the option ‘Merge visible’ under the Merge options in the Subtool subpalette to create a unified version of all your inserted meshes and base mesh.

Each piece should have its own playgroup but just in case, go to the Polygroup subpalette and click on AutoGroup.

Now you can use the Move Topology brush to adjust the individual shapes.

That’s about it really… you can use something like the IMM Model Kit brush, for instance, to add details like bolts and vents, and of course, you can also use the Live Booleans system to make the whole thing even more interesting:

Play around with this technique and see what other uses you find for it.

Let me know how you go and feel free to share your results in the comments below.

A couple more concepts…

These two images below, are ZBrush sketches or concepts created using the technique described in this post. The helmet took about 30 minutes and the ‘spaceship’ about 20 minutes so that should give you an idea of how useful this method can be to produce multiple designs variants very quickly.

The concept of the helmet and the weird spaceship are Keyshot renders with a little bit of postproduction. However, if you don’t have keyshot or want to try a different look on your render, you can use the ZBrush BPR projects that come with ZBrush FORM Materials pack for this type of results: