Cinema 4D / BodyPaint 3D Program Documentation Tutorials Mechanical Modeling Tutorial
Function available in CINEMA 4D Prime, Visualize, Broadcast, Studio & BodyPaint 3D

Working with Boole and Instance Objects

Fundamentals of Boole calculation

Many everyday objects can be created using primitives such as cylinders, spheres or cubes. Often enough, however, a corner must be trimmed or a hole added to an object in order to achieve the desired shape. If you want to do this using polygon tools the parametric objects must first be made editable (Mesh | Conversion Make Editable, or c on your keyboard). Converting the object will cause useful parameters of the original primitive, e.g., those used to interactively round a cube’s edges or regulate a sphere’s resolution, to be lost. With the help of Boolean operations (Boole Object), a conversion of primitives can often be avoided.

Above, the original objects; below, various types of Boole operations.

In the top half of the image above, the two original objects that are used in the Boolean operation are shown prior to the respective Boolean operation being applied. From left to right: A without B; A intersect B; A subtract B. The remaining function, A union B joins both objects and deletes the inner polygons (the result would look exactly like the objects are in the top half of the image). The result is a "shell” made up of both objects.

The Instance Object

It is not always necessary to work with real objects. For example, Instances can serve as placeholders for objects or entire object groups. Instances have an advantage over copies in that they adapt to changes made to the original object by assuming these changes. Instances can be created individually by selecting the Instance command from the Create | Modeling menu or multiple instances can be created by applying the Tools | Arrange menu’s Duplicate command. If the Render Instance option is enabled in the Instance parameter, Instances - not copies - of the object will be created. This bears the advantage that Instances use far less memory than copies, allowing for much more complex scenes to be rendered. For example, a tree can be instanced to create an entire forest using the Instance option, without putting an extra burden on your system’s memory usage. Instanced objects cannot however be modified separately (e.g., using Deformers) or edited separately using special parameters (with the exception of position, scale and rotation).

The following example demonstrates how to model a pencil using the Boole Object, primitives and Instances. All pertinent object properties will remain editable.