Monday, June 13, 2016

General News and Updates - PSculpt/Sketching, Drivers, GPencil, Uni/Work/Life

It's been a few weeks since by last updates, so I thought I'd do a little post to fill everyone in on where things are at.

Pose Sculpting
My last Blender development update was the Pose Sculpting + Sketching Dev Update 3 video. Thanks for all the positive reactions (from all the non-animators), as well as the (slightly more muted than expected, but nevertheless valuable) feedback I've gotten from animators so far :)

So, to sum up where we're at, and where things are heading next:
* One of the things I've heard a lot from professional animators regarding these tools is their concern about how well it will work with eulers. In particular, they were concerned about how the poses created using these tools will interpolate from one frame to another. Thanks for all the feedback on this front - I'll be making sure that much more robust testing goes into this area to ensure that we can get this under control.

* Another major concern was related to the controllability of these tools. On this, I have to give a bit of a 3-part answer:
   1) Remember how I said that these tools are still quite rough and experimental?  ;)    Well, this is one of those areas where you're seeing some of that. From experience, I can say that where we're at now is in the one where it's just one or two tiny little details that need to be tweaked to go from lots of people going "argh, this is terrible" to "wow, this is magic". Things like actually having a toolsettings panel to tweak the settings before drawing a new stroke, or having better defaults, or even just fixing up all the various little bugs that haven't been fixed yet.

   2) Sketch - Lock to plane.  See Pixar's talk at Siggraph 2015 -  it turns out that implementing those ideas may be cruical to creating a usable and robust tool for practical usage. While less fancy than the methods in the graphics papers, it's small things like being able to constrain inputs (to avoid having to be too precise with your inputs) that make using the tools a lot easier.

* When will the next update be?  Development will resume when I have time to do so (see below for the reason)...

* What will the next updates include?
   - Some tool fixes
   - Toolsettings for PSketch
   - Ability to lock PSketch influence to being on a certain plane (instead of real arbitrary 3D planes), for more controllability
    - Bendy Bones support
    - Better bone detection for sculpting (which respects all the custom bone shape madness)

General Blender Development
I've got a bunch of things that I've been planning on looking into before getting back to Pose Sculpt dev work. Here's the list:
* Drivers Eyedropper - Making it ignore the UI/screen related properties, so that you can still browse with the eyedropper active
* Drivers Eyedropper - Make a second eyedropper which works for changing/replacing the target used by a driver.
* Drivers UI - Possibly a popup UI? And/or an option to open the Graph Editor in a new window to edit the driver
* Pinning for Bone/Constraint tabs (in short, it's currently broken; I've filed a bug report in case anyone else wants to take it on, otherwise, I'll take a look)
* Deselect old keyframes before adding new ones, for smoother workflow
* Animation Channels PyAPI
* Get properties panels showing in Action Editor
* Action Management hotkeys - editor switching, etc.
* Extra polish stuff for Bendy Bones

Grease Pencil Stuff
For the meantime, I'm putting Grease Pencil work on hold. Fortunately, in the meantime, Antonio is busily pushing the tool in some exciting new directions, so hopefully we'll hear more about that in due course.

Some things that I'm hoping to get around to soonish (before the next release) are:
* Fix the sculpt tools for 2D/view aligned strokes

On a slightly more long-term basis:
* Get GP keyframes showing up in the main Action Editor window  - This is a real big hard slog, as all the Action Editor operators need to be audited and cleaned up to work with anything other than F-Curve keyframe data. Currently, it assumes that everything is of a certain type - the GPencil and Mask modes are actually kind of hacks, in that when in those modes, the usual operators are skipped completely and the alternate handling is used.  I've got an initial branch for this, but I quickly realised that the amount of careful slog required was too much to really look into in the short term, with all the other things I have to deal with atm.

* Automated GP to Freestyle conversion - I've figured out the broad details for a nice way would could do this, but it's more a matter of having time to do it first...

So, what's the big bottleneck for all this Blender dev work I'd like to do?  Well, a pile/mountain of stuff I need to get done in my "real/other life" as a PhD student ;)

Currently over the past few weeks, I've been locked in a bit of a "Either I finish this bloody thing off, or it finishes me off first" duel with another big write up I've been doing for a study that's been bloody hard to tame. To be honest, I'm well and truly over this whole project now:  I'm starting to really hate citing stuff, analysing data and getting it into presentable format, and simply churning out the requisite text to bind all that crap together. Blegh! Hopefully I'll be able to finally get this crap off my desk this week.... I won't be sorry to see it go!   Wish me luck ;)

(I still need to work on one more project before I can actually wrap up my thesis, and all that work will probably need to happen before October - or else finding participants will get really hard/impossible till next year, when it's a bit too close for comfort to getting everything all wrapped up for good. So, eep... fun Blender work keeps me sane, but anything too intensive or requiring careful attention may have to take a backseat for a while until I get all this remaining stuff done. Sigh!  Why do all the interesting things all have to show up at the same time?!!!!)

Some other stuff that's been happening is that I've been doing a spot of end-of-term assessment stuff for the course I've been tutoring. If you want to get a taste of what that's been like, here's a little note-to-self I left the other night before bed:
Hmm... Is it a bad thing that, after spending the past few hours marking first year assignments, I can't seem to shake the smell and taste of a big messy pile of orange and green playdough?! 
Yeah, maybe this isn't a good sign.... Bad hallucinations... bad hallucinations...    



What do you mean you're still too disturbed to get any sleep!  
Haha  ;)

Back to the slog! Over and out!


  1. Hello, Ali

    On "slightly more muted feedback from animators," where can we provide feedback? Some of us reply to posts on this blog (like at, but we can't tell whether or not you see the comments.

    Otherwise, looking forward to testing pose sculpting, and wishing you good luck with your PhD work!

    1. Hi there,

      I do see the comments here, as well as on the video, or directly via email.


  2. I guess rev b6a898b may cause to lose GP editing in edit mode and sculpt mode.
    directly switching into sculpt edit mode causes entering object mode.

    1. Huh? I can't seem to locate the commit, so I'm not sure what's going on in this case...

    2. oops, sculpt edit mode -> "edit strokes mode"
      I mean "enable editing" in 3dview should be useful for non-object mode.
      e.g. bsurface addon depends on GP and works in edit mode.