Independent Dyntopo Development

After much thought I’ve decided to continue developing DynTopo independently. I originally started this project because I was using DynTopo heavily as a user and there was talk of removing it from Blender. I’m stuck maintaining it whether I want to or not; no other sculpting software has anything remotely like a true attribute-preserving dynamic remesher.

I still want to get this into master but that will likely have to wait until the Blender Foundation has more resources to allocate to code review. I will be regularly syncing the DynTopo branch (temp-sculpt-dyntopo, you can download it from the buildbot) with master. Note that I’ve created a GitHub mirror for reporting bugs.

Aside from DynTopo I’m thinking of making another branch for other sculpt development projects that people may want. This would probably be limited to new brushes and mesh filters and the like, stuff that’s easy to split into independent pull requests.

I’m still working out the details of fundraising. I’ve started a Patreon and you can also donate to me on PayPal. I also have a blog though it doesn’t have any content related to DynTopo yet.

For the Patreon I’m thinking of doing some sort of weekly live streaming. I could demo sculpting, or answer questions, or take feedback. Suggestions are welcome. I was thinking perhaps Saturday at 10am PST (7pm CET) might be a good time.

Anyway, let me know what you think.

Edit: Suggested non-dyntopo features:

  • Pablo stuff:
    • Shrinkwrap brush.
    • Extra mesh filters.
    • Pose bend mode. @Metin_Seven
    • Detail smoothing patch.
    • Fairing brush.
    • The symmetrize brush and the mask select brush from sculpt-dev @Rimasson
  • A ‘quick primitive’ feature that adds basic shapes with no fuss. Hit a button/key and a prim pops in ready to sculpt. : @Musashidan @Metin_Seven
  • Easy to use deformers with visual gizmos, such as an easy, locally oriented FFD lattice, bend, taper, twist, skew, etcetera, taking masked areas into account. @Metin_Seven
  • Shapekey Eraser brush @manuDesk
  • Apply modifiers when dropping primitives @Frozen_Death_Knight
  • Lasso and I think box masking that allows you to only apply in front faces and not with projection like currently works… @MichaelBenDavid
  • Add pinch slider to draw sharp @MichaelBenDavid
  • Improve flatten brush @MichaelBenDavid
  • Color Gradient radial/linear brush and with 2d or 3d stroke curves mode @MichaelBenDavid
  • Bucket fill brush @MichaelBenDavid
  • Surface smooth brush that’s stronger for high poly meshes @MichaelBenDavid
  • Dyntopo detail flood fill should take masking/automasking into account @MichaelBenDavid
  • Faster topology masking. @MichaelBenDavid
  • Make vertex paint shift-blur it’s own brush
  • Add option for simple blur (not an unsharp mask) to cavity mask @MichaelBenDavid
  • Add occlusion (or possibly just automasking) option to box/lasso masking @MichaelBenDavid
  • Make automatic sharp marking in clip tools an option. @Metin_Seven
  • Option to disable cursor crosshair. @Metin_Seven
  • Clear marked sharp edges operator. @Metin_Seven
  • Update smooth filters to match smooth brushes. @Metin_Seven
  • Repeat last stroke. @TheFlow @Nwytg @MetinSteven
  • Fix bugs with mirror modifier when using Clipping and Merge @Frozen_Death_Knight
  • Reset All Sculpt Brushes
86 Likes

I’ve subscribed :+1:

I really hope that the Blender Community (especially the sculptors) can put their money where their mouths are and help support this.

10 Likes

Thanks a lot!

1 Like

That is great Joe, even though forks are generally discouraged. I think we do need more development in the areas of sculpting. Do you have a rough roadmap writing somewhere? Will you take feature requests? Any interest in multries improvements?

3 Likes

!!!Bravo!!!
:clap:

1 Like

I am taking feature requests, though since this is not really a hard fork I can’t do anything too major. Things like brushes or filters are fine, but multires, sculpt layers, a node-based brush composer, etc are off the table for now.

I’m still putting a roadmap together, will hopefully have it up somewhere soon.

8 Likes

Thank you for continuing the work on Dyntopo and other sculpt things, so if I understand correctly and you want to get it into master eventually, will you talk to the BF devs and module members to coordinate everything? I mean, to make sure that your work won’t stay in limbo forever…

And about requests, how about porting some of the stuff that Pablo Dobarro did and was never added to master? I think that would be a good place to start.

7 Likes

I’m going to talk to the BF devs, yes, and porting Pablo’s stuff is definitely on the table.

17 Likes

Great initiative, Joe! :+1:

Lately I’ve rediscovered ZBrush, but I’ll definitely keep a close eye on this thread and will very probably become a supporter sooner or later.

My top wishlist for Sculpt Mode:

  1. SDF (Signed Distance Fields) functionality, for real-time, non-destructive Booleans and flexible blending of shapes and vertex colors.

  2. Porting of all functionality from Pablo Dobarro’s Sculpt Dev branch, including the Bend mode of the Pose Brush.

  3. A smoothing algorithm that’s really on par with ZBrush volume-preserving smoothing (the smoothing algorithm when you release the Shift key in ZBrush). In Blender Sculpt Mode, every single smoothing method (including the Shift mode of Slide Relax) still leaves irregularities to some degree.

  4. Ideally, the same algorithm should be available as a Mesh Filter.

  5. Easier (Control and/or Shift based) controls / shortcuts for much-used basic functions, such as masking, hiding and assigning Face Sets.

  6. A solid (normal-based) Insert Mesh tool, with a range of primitives to choose from.

  7. Easy to use deformers with visual gizmos, such as an easy, locally oriented FFD lattice, bend, taper, twist, skew, etcetera, taking masked areas into account.

@Musashidan will undoubtedly have more to add.

5 Likes

yeah no pressure Joe :sleeping:

4 Likes

Another interesting Sculpt Mode suggestions thread:

A lot have changed since this proposal. We have Brush Asset Shelf in development which will fulfill the role of pie-menus in this proposal. Also the problem of brush thumbnails is being solved - at least when it comes for default brushes.

The only part that is still waiting for a design decision from BF is brush authoring and I doubt that this can be done by an outside dev.
Finishing Dyntopo is much better choice as this project is long overdue and a lot of work was spend on it.

5 Likes

I downloaded the Dynotopo branch today and I find that there is a smooth with preserve volume option in brush properties, I really liked it.
And it would be nicer if you could implement pen pressure falloff ramp part from this task

I’m just a casual observer of sculpt mode these days so I’m far from qualified to comment beyond what I hoped would be added as future features the last time I tried it. Although this stuff is all probably redundant as Joe says he will be limited in his scope.

I would agree with everything on your list as being essentials, and I wouldn’t have much more to add as a blueprint for a starting point for a solid sculpting UX. I would also like to see:

1 - A solid, reliable multires workflow, modifier or otherwise. This is essential in any sculpting program.
2 - A ‘quick primitive’ feature that adds basic shapes with no fuss. Hit a button/key and a prim pops in ready to sculpt.
3 - This is well out of scope, but a native Zremesher-type tool that isn’t sh*t. I realise that this would fully depend on what opensource solutions are available, but there it is.

That’s it really(plus Metin’s list) The basics/core of the base sculpting UX are far more important than adding fancy new features, imo.

8 Likes

I hope Joe is a good cook. :grin:

8 Likes

Yes, totally second this! :+1:

5 Likes

Btw I agree that multires and quad remeshing are core features. Quad remeshing may or may not be a possibility depending on the state of published research code; if I had to implement it from scratch it would likely take months of work and several iterations.

Multires is tricky. IMHO the fundamental problem is trying to make multi-resolution sculpting work on top of PTex grids; we need to rewrite multires (again) to be a simple subdivision sculpter (ala SculptGL, it’s crazy how a JS app does multres better than Blender does), and implement PTex VDM grids separately.

8 Likes

Perhaps the aim then is once the Dyntopo work gets committed to main, a brand-new branch can start that reworks multires (with things like PTex-like painting)?

Whether or not that will work, the buildbot working again for Dyntopo and with all of the major stuff planned for 4.0 is a great thing to see. I do hope the planned cooperation with the BF goes as smooth as possible and brings about a big step in ensuring Blender continues to live up to their own slogan for 2.8 (Putting the fun back into 3D).

Brush properties are off the table for now, though I might sync the branch with master in case other people want to take a crack at it.

2 Likes

I still like that proposal btw, but no it’s unfortunately not on the table right now.

4 Likes