[Soc-2011-dev] Weekly Progress Report 04 - Sculpt/Paint - Onion

Jason Wilkins jason.a.wilkins at gmail.com
Sat Jun 18 19:39:22 CEST 2011


This week started by integrating Nicholas Bishop's work from the past
year, up to the point of generalizing the symmetry code from sculpt to
work more generally.  At this point I decided to go ahead and start
re-factoring sculpt.c and paint_stroke.c because even though Nick's
work was in the spirit of what I was going to do eventually it did not
go as far as I wanted to.  Since sculpt.c and paint_stroke.c are so
different between Onion and soc-2010-nicholasbishop I have been having
to hand merge all features anyway, so it didn't matter if I just went
ahead and rearranged them.

I'm beginning to wonder if that was a mistake, because it became clear
I didn't just want to do some of the re-factoring, I wanted to do most
of it.  I cannot compile right now, so I can't commit because I do not
want to disrupt Psy-Fi.

It isn't that dire however, I am making progress and I'm happy with
the way things are going.  The hardest part will be regression testing
after I am done, but I have a plan for that.

I have taken sculpt.c and paint_stroke.c and divided them into more files:

sculpt.c - sculpt operator

paint_stroke.c - paint stroke operator

paint_bspace.c - "brush local space", generic math for brushes

paint_mesh.c - manages multires, pbvh, deformation, and persistent
base.  mostly stuff for sculpting/painting on derived meshes

paint_hide.c - mesh hiding operator

paint_control.c - on-surface brush, 3d radial control, and overlays,
basically stuff that uses opengl

sculpt_tools.c - sculpting kernels, the inner loops of sculpting tools


I am hoping to have something I can commit by Monday and then continue
with merging.  Stuff will break.

Next week I plan to track down any regressions and continue merging up
to the point where ptex is added.  That should get me to a point where
vpaint and sculpting should be fairly unified (but don't get the idea
that you will be able to sculpt and apply color at the same time, that
is probably still a couple of weeks away).

I believe I am still on track to complete re-factoring, merging, and
optimizations before the half-way point, which will allow me to focus
on new features for the second half.


More information about the Soc-2011-dev mailing list