Cinema 4D / BodyPaint 3D Program Documentation Reference BodyPaint 3D Tools Menu
Function available in CINEMA 4D Prime, Visualize, Broadcast, Studio & BodyPaint 3D

Projection Painting

The advantages of projection painting

Constant brush size

Projection painting is your best friend when it comes to painting objects without distortion. Take a look at the picture below. The top object was painted in the normal painting mode — note how the brushstroke is massively distorted. Contrast this with the perfect brushstroke on the bottom object, which we painted in projection painting mode.

Projection painting mode off (top) and on (bottom)..

However, even projection painting will not save you if the UVs are completely out of shape. Therefore you should create at least a reasonably good UV mesh before you switch on projection painting. you will be pleased to know this is an easy task thanks to BodyPaint 3D’s powerful suite of UV editing tools.

Painting on multiple materials and objects

Another advantage of projection painting is that it lets you to paint on several materials or objects at the same time, even if their textures are different sizes. You can even smear over multiple textures and objects!

How projection painting works

When you paint in the viewport using projection painting, a virtual projection layer is created perpendicular to the camera. This projection layer is in turn projected onto the objects you want to paint on.

Projection painting is based on a planar projection.

The main downside to projection painting is that it requires plenty of RAM. The larger the view and the more material channels you are painting, the more RAM projection painting needs. You can work out exactly how much RAM is needed using the following equation:

RAM needed (in bytes) = height * width of view (in pixels) * 8 * number of material channels to be painted * 1 (8-bit texture) or * 2 (16-bit texture) or *4 (32-bit texture).

For example, suppose your 3D view is 700 x 600 pixels and you are using a multibrush to paint on the Color, Diffusion, Reflectance and Bump channels on 8-bit textures. The amount of RAM required is 700 * 600 * 8 * 4 * 1 = approx. 13 MB.

There’s a further downside to projection painting: it can take a while for the projection layer to be projected onto the objects. The bigger the textures and the more channels you are painting on, the longer this process will take.

Even so, these disadvantages are a small price to pay indeed for the excellent results you can achieve with projection painting.

Projection painting and the Layer Manager.

As long as the projection has not been applied, temporary sub-layers can be added, created, etc.

When in Projection Painting Mode, it is now possible to work with temporary layers using the Layer Manager. As soon as you activate the Projection Painting Mode, a PP Layer will be created in the Layer Manager. Using customary commands, you can now add new layers, change the order of layers per drag & drop (even add layer sets), make a different layer active, etc. - even in conjunction with blend modes!

As soon as you apply the projection to the object the temporary layers will be irreversibly flattened.

However it is possible to save temporary layers as Photoshop files (and later load them) using the Save Texture As command. Although you should first take a look at the Freeze 3D View command:

Freeze 3D View

The Freeze 3D View command (which must be executed prior to creating and modifying any temporary layers) is located in the 3D view’s Edit menu. Selecting this command will open the dialog window pictured above. The Freeze 3D View command lets you freeze the current 3D view with the pixel resolution defined in the dialog window. The view will then be frozen until the Freeze 3D View command is executed again. This command can be useful if you want to edit a texture in Photoshop and subsequently reload it.

Let's say you want to paint in Projection Painting mode using temporary layers in the Layer Manager. Before a layer is created, freezed the view with a resolution of 1000 x 1000 pixels.

If you now select Save Texture (in Photoshop .psd format) the temporary layers will be saved within the .psd file (with a resolution of 1000 x 1000) and the file can be opened and edited in Photoshop.

Only edit the layers in the PP Layerset since these are the ones that will later be imported. All other layers are merely help layers.

The .psd file can be loaded back into the still temporary layers in Cinema 4D/BodyPaint 3D after it has been edited. To do so simply use the Merge Texture command (right-click on a layer: Texture / Merge Texture). This lets you switch textures seamlessly in Project Painting mode using Photoshop.