Page MenuHome

Vertex painting in sculpt mode
Open, NormalPublic

Description

The sculpt branch has functionality to paint vertex colors in sculpt mode. This lets us reuse brush features and implementation, as well as have brushes that can both displace and paint at the same time.

Colors vs. Attributes

Unlike vertex paint mode, this only works with per-vertex colors, not per-loop (face corner) colors, and that limitation would likely remain. Rough idea to resolve this could be:

  • Sculpt mode would be for more artistic purposes, and only support painting per-vertex color.
  • Vertex Paint becomes Attribute Paint/Edit mode. This would allow visualizing and editing general attributes besides vertex colors, for more technical purposes.
  • Mesh properties could get an Attributes panel listing user-created attributes that could be per-vertex, per-face, per-loop, with different possible data types. Current per-loop colors would just be one specific case.

This is a quite big change though, but aligns with the need for more general attributes for function nodes and volume objects in the future.

Sculpt Mode UI

If painting brushes would be in the same toolbar as sculpting brushes, and if any brush can potentially have settings for both sculpting and painting, the UI can become complicated.

We are missing a design for how to handle this.

Details

Type
To Do

Event Timeline

Brecht Van Lommel (brecht) lowered the priority of this task from Needs Triage by Developer to Normal.Jul 23 2019, 3:35 PM
Brecht Van Lommel (brecht) created this task.

We should be careful of making the whole UI very complicated to allow for a corner case use-case.

Perhaps a simple way to solve the UI issue, is to:

  • Keep Sculpt and Vertex paint as separate modes, even if they share underlying code and brush system
  • Add a toggle for certain Sculpt tools where it makes sense, to allow sculpting *and* painting simultaneously

We should be careful of making the whole UI very complicated to allow for a corner case use-case.

What you mean by "corner case use-case"?

Vertex painting is actually a very popular way of coloring concept models/sculpts, specially in zbrush. In blender it never became too popular due to the poor performance of the current vertex paint mode. Now, with this new implementation and the much better performance that it has, I believe we'll see a lot of users starting using it more and more.

Also, this vertex painting feature as it is right now, it works as a brush setting, which is great, there's really no need to create several dedicated painting brushes in sculpt mode, only one would be enough for quick access and let the user know that the feature exist. For sculpting and painting at the same time it would be just a matter of enabling that color setting on any brush.

I don't think there's room for complicated UI here? 🤔

@William Reynish (billreynish) Personally I don't think it needs to add too much clutter to the UI since it's essentially just the 2 colors & color switcher in the topbar + the blend mode in the brush options. The color palletes could also be shown in the tool settings within the brush options.
In the overall picture of brush settings that's very little to add.

And it would make sense to just make these basic vertex painting features fully available in sculpt mode instead of splitting it off into yet another mode.
Even adding not just a paint brush but the average color, smear and blur as well and visually separate them from the usual sculpt brushes wouldn't be out of the ordinary. It would be the same categorisation with the Object Mode Tools in Edit Mode being visually separated from the Edit Mode Tools.

The big problem I see is that the Toolbar is already getting pretty huge, especially with additional brushes and tools from the sculpting branch, but that's a different issue IMO since a couple (or even many) tools can be easily merged.

We could have a field to associate a vertex paint brush to a sculpt brush. This way by default, we could re-use brushes already existing in vertex paint mode.
We could have a toggle in sidebar to switch from sculpt brush settings to vertex paint brush settings like in vertex paint mode.
Or there could be 2 tabs for brushes settings in sculpt mode.
This way, we keep an UI that users are already familiar with and have access to all brush settings.
In tool settings bar and right click menu, we could have what Julien said (only color + blend mode).

What I mean is, sculpting with colors is not the main use-case of sculpt mode. It’s also not what you expect from ‘Sculpt’, making vertex painting harder to find. Having vertex painting separate from sculpt mode is not adding an extra mode, because it’s how it is today.

If we did combine the modes, we’d need to have a way to switch the toolbar so you only see sculpt or paint tools anyway, otherwise the toolbar will require lots of scrolling, making it annoying to use.

For the very rare case where you want to paint AND sculpt, we could have a toggle inside the tool options for that, hiding the color settings by default.