[Soc-2010-dev] Status report for multires

Nicholas Bishop nicholasbishop at gmail.com
Sat Jul 31 08:33:04 CEST 2010


Status report for July 24 - 30:
* Committed multires vpaint code that I talked about last week
* Long list of things that now work in vpaint:
* * Partial redraw
* * Undo
* * Layered drawing of multiple vertex color layers, using alpha to
combine layers
* * Blur tool
* * Brush textures
* * Fast navigation
* * Paint masks
* * Symmetry
* * Most sculpt stroke options (not anchored and drag dot yet)
* Added alpha brush to vpaint
* Changed mask brush into a brush option
* Fixed non-VBO drawing in sculpt/vpaint for vertex colors and paint masks
* Fixed rendering multires vertex paint
* Fixed applying multires with vertex colors
* Some updates to my release notes:
http://wiki.blender.org/index.php/User:Nicholasbishop/SummerOfCode2010/Release_Notes

Video of vpaint symmetry/brush texture: http://vimeo.com/13776640

Plans for next week:
* Finish up the tools not yet working in vpaint
* Handle renaming layers
* Undo support for adding/removing vertex colors while in vpaint
* Fix single element coloring (again)
* And of course more bug fixing

-Nicholas

On Sat, Jul 24, 2010 at 1:22 AM, Nicholas Bishop
<nicholasbishop at gmail.com> wrote:
> ... and 10 hours later, video is ready:
> http://vimeo.com/13581943
>
> -Nicholas
>
> On Fri, Jul 23, 2010 at 2:57 PM, Nicholas Bishop
> <nicholasbishop at gmail.com> wrote:
>> Status report for July 17 - 23:
>> * Finished merging from trunk, although there are still some weird
>> issues to track down.
>> * Multires vpaint is working:
>> * * Note that most of this work is not committed yet, I need to check
>> over it first
>> * * I had to do some rethinking of the CustomData / Multires data /
>> CCGDM data interaction; what made sense for paintmasks did not
>> entirely work for colors. So mcuh of the work was just figuring out a
>> better design there, once that was done multires vpaint fell into
>> place pretty quick.
>> * * Overview of how I changed things:
>> * * * Instead of using CustomData to store multires disps for masks
>> and colors, I added a small CustomDataMultires struct. It's similar to
>> CustomData, but very very cut down and restricted to just what
>> multires needs. This avoids making lots of small changes to
>> CustomData, and clarifies the code.
>> * * * Made it possible to turn multires on and off for individual
>> CustomData layers. This is needed for memory reasons; e.g. a user
>> might want to sculpt a multires model but leave vertex colors at the
>> base level (not multires editable.)
>> * * * In order to keep everything in sync between CustomData,
>> CustomDataMultires, and the grid data, I've started using
>> CustomDataLayer type and name as a unique key.
>> * * Right now things are still sort of hacky, and multires vpaint is
>> limited in what it can do, but the basics are in place now.
>> * * Most importantly, new video! http://vimeo.com/13581943 (Vimeo is
>> apparently dealing with a large backlog today, but hopefully the video
>> will appear eventually.)
>>
>> Plans for next week:
>> * Continue working on vpaint.
>> * * Multires vpaint needs the other brush types still (just mix working atm)
>> * * Enable partial redraw for vpaint, should be fairly easy since it
>> works same as sculpt
>> * * Continue enabling features for vpaint, like textures, symmetry, masking...
>>
>> -Nicholas
>>
>> On Sat, Jul 17, 2010 at 9:38 PM, Nicholas Bishop
>> <nicholasbishop at gmail.com> wrote:
>>> Status report for July 10 - 16:
>>> Not a huge amount of work finished this week:
>>> * Fixed some new vpaint/sculpt bugs
>>> * Brought back some vpaint features for pbvh vpaint
>>> * Currently working on merging up to latest trunk; there's a lot more
>>> conflicts to deal with due to the recent merge of Jason's branch to
>>> trunk.
>>>
>>> Next week:
>>> * Finish dealing with conflicts from trunk
>>> * Continue working on vpaint, mostly the same list of things to fix:
>>> * * Partial redraw
>>> * * Multires
>>> * * Blur
>>> * * Normals/Spray
>>> * * Textures
>>> * * Masks
>>> * * Undo
>>>
>>> -Nicholas
>>>
>>>> On Sat, Jul 3, 2010 at 3:45 PM, Nicholas Bishop
>>>> <nicholasbishop at gmail.com> wrote:
>>>>> Fixed, thanks.
>>>>>
>>>>> On Sat, Jul 3, 2010 at 3:29 PM, Tom M <letterrip at gmail.com> wrote:
>>>>>> permissions are currently private....
>>>>>>
>>>>>> On Sat, Jul 3, 2010 at 11:24 AM, Nicholas Bishop
>>>>>> <nicholasbishop at gmail.com> wrote:
>>>>>>> Here's the video:
>>>>>>> http://vimeo.com/13060555
>>>>>>>
>>>>>>> -Nicholas
>>>>>>>
>>>>>>> On Sat, Jul 3, 2010 at 2:16 PM, Nicholas Bishop
>>>>>>> <nicholasbishop at gmail.com> wrote:
>>>>>>>> Status report for June 26 - July 2:
>>>>>>>> * Fixed lots of bugs, crashers, memory leaks
>>>>>>>> * Performance improvements for masks (only updating color buffers, and
>>>>>>>> vice versa for regular sculpt brushes)
>>>>>>>> * Added a checkbox to enable/disable mask layers
>>>>>>>> * Added a 'strength' slider for masks layers, changes how much the
>>>>>>>> mask attenuates the brush, and shows the mask onscreen as more
>>>>>>>> transparent
>>>>>>>> * Added a new operator to convert a texture to a mask using MTex for
>>>>>>>> mapping the texture to the mesh. (This one took a while for me to
>>>>>>>> figure out, but I think what's there should be pretty robust now.)
>>>>>>>>
>>>>>>>> Plans for next week:
>>>>>>>> * According to my schedule, the time allocated for masks is up! So
>>>>>>>> this week I really do move on to new tasks.
>>>>>>>> * From the schedule, multires for vertex colors is next, but I'm going
>>>>>>>> to work on vertex layers for sculpt first, since it ties into mask
>>>>>>>> layers a lot.
>>>>>>>> * I'm starting vertex layers today, putting in basic infrastructure
>>>>>>>> first (again, similar to mask layers)
>>>>>>>>
>>>>>>>> I have another screencast to share, but I'm having some trouble
>>>>>>>> uploading to Vimeo; I'll send another mail once that's done.
>>>>>>>>
>>>>>>>> -Nicholas
>>>>>>>>
>>>>>>>> On Sat, Jun 26, 2010 at 2:16 AM, Nicholas Bishop
>>>>>>>> <nicholasbishop at gmail.com> wrote:
>>>>>>>>> Status report for June 19 - June 25:
>>>>>>>>> * Mask layers committed
>>>>>>>>> * * Works with both regular and multires meshes
>>>>>>>>> * * Works with sculpt undo
>>>>>>>>> * * Has a simple UI
>>>>>>>>>
>>>>>>>>> Plans for next week:
>>>>>>>>> * Make masking better
>>>>>>>>> * * First priority is to fix masking bugs that have been reported on the forums
>>>>>>>>> * * More options to control layers, such as layer opacity
>>>>>>>>> * * Then maybe can move on to coord layers
>>>>>>>>>
>>>>>>>>> Also, I probably won't be able to make the Sunday meeting this week.
>>>>>>>>>
>>>>>>>>> -Nicholas
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Sat, Jun 19, 2010 at 12:32 PM, Nicholas Bishop
>>>>>>>>> <nicholasbishop at gmail.com> wrote:
>>>>>>>>>> Whoopsies, fell asleep last night without writing the report :)
>>>>>>>>>>
>>>>>>>>>> Status reprot for June 12 - 18:
>>>>>>>>>> * Brought back mesh hiding. Ctrl+Alt+LMB now hides a rectangular area
>>>>>>>>>> of the sculpt mesh, Ctrl+Shift+LMB does the same but hides outside the
>>>>>>>>>> rectangle.
>>>>>>>>>> * * This works very different from 2.4, now it just rebuilds the PBVH
>>>>>>>>>> with some primitives excluded, much cleaner.
>>>>>>>>>> * Fixed undo for masks in sculpt
>>>>>>>>>> * Committed fixes for various bugs
>>>>>>>>>> * Started work on mask layers, this will also create the foundation
>>>>>>>>>> for multiple coord layers and such
>>>>>>>>>> * * Created a basic UI in the same style as vertex groups and shape keys
>>>>>>>>>> * * Started adding support for mask layers on non-multires meshes:
>>>>>>>>>> * * * Added operator to create new mask layers
>>>>>>>>>> * * * Sculpt's mask brush and the mask_set operator can be used to
>>>>>>>>>> independently edit any of the layers
>>>>>>>>>> * * * gpu_buffers combines the mask layers additively for display
>>>>>>>>>>
>>>>>>>>>> Plans for next week:
>>>>>>>>>> * Continue working on mask layers
>>>>>>>>>> * * Make regular sculpt brushes interact with multiple mask layers
>>>>>>>>>> * * Add a way to toggle mask layers on and off
>>>>>>>>>> * * Add a delete mask layer operator
>>>>>>>>>> * * Make mask layers work with multires
>>>>>>>>>> * After that I'll either start working on coord layers or masks for vpaint
>>>>>>>>>>
>>>>>>>>>> Schedule:
>>>>>>>>>> On track.
>>>>>>>>>>
>>>>>>>>>> -Nicholas
>>>>>>>>>>
>>>>>>>>>> On Fri, Jun 11, 2010 at 11:49 PM, Nicholas Bishop
>>>>>>>>>> <nicholasbishop at gmail.com> wrote:
>>>>>>>>>>> Status report for June 5 - 11:
>>>>>>>>>>> * Finally have a good base done and committed to build on:
>>>>>>>>>>> * Committed the stuff I talked about last week
>>>>>>>>>>> * Modified CCGSubsurf so it can subdivide more than just coordinates
>>>>>>>>>>> (used currently for masks)
>>>>>>>>>>> * Modified multires to support updating masks
>>>>>>>>>>> * Mask layer can be filled, cleared, inverted
>>>>>>>>>>> * Sculpt brushes now work with masks
>>>>>>>>>>> * Added a mask brush to sculpt to edit masks
>>>>>>>>>>> * Wrote some basic release notes:
>>>>>>>>>>> http://wiki.blender.org/index.php/User:Nicholasbishop/SummerOfCode2010/Release_Notes
>>>>>>>>>>> * Not related specifically to my gsoc project, fixed various bugs in trunk.
>>>>>>>>>>>
>>>>>>>>>>> Plans for next week:
>>>>>>>>>>> * I'm looking now at bringing back the mesh hiding feature from 2.4x
>>>>>>>>>>> (LMB+Ctrl+Shift).
>>>>>>>>>>> ** This time no ugliness with mesh reordering, I plan for it all to go
>>>>>>>>>>> through the PBVH and support multires nicely too.
>>>>>>>>>>> * Plan to look at undo with masks and saving masks.
>>>>>>>>>>> * If there's time, start working on vpaint.
>>>>>>>>>>>
>>>>>>>>>>> Schedule:
>>>>>>>>>>> On track.
>>>>>>>>>>>
>>>>>>>>>>> -Nicholas
>>>>>>>>>>>
>>>>>>>>>>> On Fri, Jun 4, 2010 at 11:26 PM, Nicholas Bishop
>>>>>>>>>>> <nicholasbishop at gmail.com> wrote:
>>>>>>>>>>>> Status report for May 29 - June 4:
>>>>>>>>>>>> * Lots of code written, very little committed.
>>>>>>>>>>>> * Things that work:
>>>>>>>>>>>> ** Building a customdata mask layer for non-multires meshes
>>>>>>>>>>>> ** Displaying the mask layer with VBO for both regular and multires
>>>>>>>>>>>> meshes (non-VBO still todo)
>>>>>>>>>>>> ** Subdividing the original mesh mask layer (for multires)
>>>>>>>>>>>> * In progress:
>>>>>>>>>>>> ** Updating the multires mask layer so that changes actually stick (as
>>>>>>>>>>>> well as subdividing higher levels)
>>>>>>>>>>>>
>>>>>>>>>>>> Today I also spent some time getting Valgrind to work properly on my
>>>>>>>>>>>> machine. It spews millions of errors (literally) due to my graphics
>>>>>>>>>>>> drivers, but I mucked about with the suppressions files and now I get
>>>>>>>>>>>> relatively sane output. Already found a bug in the VBO code this way
>>>>>>>>>>>> :)
>>>>>>>>>>>>
>>>>>>>>>>>> I feel like I'm making good progress here, but I keep having a-ha
>>>>>>>>>>>> moments where I realize I was doing something stupid.
>>>>>>>>>>>>
>>>>>>>>>>>> Plans for next week:
>>>>>>>>>>>> * Continue working on the in-progress item above. This might happen in
>>>>>>>>>>>> the next few minutes, or the next few days. Definitely feel close
>>>>>>>>>>>> though.
>>>>>>>>>>>> * Break apart the work I've done so far and commit in smaller chunks.
>>>>>>>>>>>> * If I get both those done, I'll make masks actually have an effect in
>>>>>>>>>>>> sculpt mode (very easy, basically just multiply one extra value per
>>>>>>>>>>>> vertex/grid point.)
>>>>>>>>>>>>
>>>>>>>>>>>> -Nicholas
>>>>>>>>>>>>
>>>>>>>>>>>> On Fri, May 28, 2010 at 6:41 PM, Nicholas Bishop
>>>>>>>>>>>> <nicholasbishop at gmail.com> wrote:
>>>>>>>>>>>>> Status report for May 24-28:
>>>>>>>>>>>>> * Committed only some very basic things like new CustomData types, and
>>>>>>>>>>>>> for masks, a test UI and test operator.
>>>>>>>>>>>>> * Relearned how the various DerivedMeshes work with modifiers and CustomData.
>>>>>>>>>>>>> * Started modifying gpu_buffers to add a color buffer, will be used
>>>>>>>>>>>>> first for displaying masks.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Plans for next week:
>>>>>>>>>>>>> * Finish the color buffer code. Once this is done it becomes much
>>>>>>>>>>>>> easier to test everything else, since results will be visible on the
>>>>>>>>>>>>> mesh.
>>>>>>>>>>>>> * Continue work on facegrid CustomData so that it interacts with CCGDM
>>>>>>>>>>>>> correctly, and then with MultiresDM.
>>>>>>>>>>>>>
>>>>>>>>>>>>> -Nicholas
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Soc-2010-dev mailing list
>>>>>>> Soc-2010-dev at blender.org
>>>>>>> http://lists.blender.org/mailman/listinfo/soc-2010-dev
>>>>>>>
>>>>>> _______________________________________________
>>>>>> Soc-2010-dev mailing list
>>>>>> Soc-2010-dev at blender.org
>>>>>> http://lists.blender.org/mailman/listinfo/soc-2010-dev
>>>>>>
>>>>>
>>>>
>>>
>>
>


More information about the Soc-2010-dev mailing list