Saturday, May 21, 2016

Turbulent Autumn Storms - Violin Improv Session

Letting off some steam on a rainy autumnal-Saturday afternoon with some crazy violin bashing mixed in with some calmer/mystical elements. As usual, everything was fully improvised on the spot with no prior practice/planning, unedited... just whatever crazy noise I felt like making with my violin at the time.

The recording quality is a bit crappy - I should look into getting a standalone mic instead of using my laptop's one with the lid closed! Ah.. hindsight!


Wednesday, May 18, 2016

An In-Depth Look at How B-Bones Work - Including Details of the New Bendy Bones

Here's a breakdown of how the B-Bones in Blender work (including the new Bendy Bones stuff - see the other post in this series, which focusses more on the features themselves). I'm writing these notes up mainly so that I have something to refer to again in the future, if/when I need to do further work on this stuff. It took me a little while to figure out how some of this magic all fits together. However, now that I've figured this out, it turns out that it's quite easy to see all the extension points that this system has for adding interesting + useful features quite easily in fact. Therefore, before I forget about all this again, here we go!

BTW, all the diagrams within were done using Grease Pencil :)

Bendy Bones Dev Update

It's been a busy few months since I first announced that I was working on bringing Pepeland's Improved Bendy Bones to Blender. After being tied up with many other projects for the past few months, I just spent the weekend having a fun hackathon to get this functionality polished up and ready for general use in Blender proper. Along the way, I've also added a few cool new features, which really take B-Bones to the next level! Here's a sneak peak of some of these in action!



In each of these screenshots, you're seeing just a single B-Bone - no hidden stuff, no tricks. Just a single B-Bone...

UPDATE: It's now in master! (After a little fight with git to let me merge the branch successfully...) Woohoo!

Sunday, May 8, 2016

Don't you hate it when this happens...

While writing that previous post, I looked on in horror as "jumping spider" casually sauntered won from the top of my screen, and started walking down the the middle of the screen... At that point, I pulled up Paint, and started drawing the following note on the screen, with the intention of capturing a snapshot of it using my phone...


Lo and behold, this is the photo I captured. Making things worse/more ironic, was that as I was drawing the arrow that pointed at the blasted invader, it turned around (it had been facing the other way, big legs to the left instead), to face/stare at the arrowhead.... Way to go spider, way to go...


(And now, as I'm typing this, it's wandering in and out of the right hand side of the screen.... no, wait, now it's sitting over the "Schedule", no "Labels" button on the side panel, as if trying to have a say on what I classify this post as.... Gah!  It's so annoying, as I don't really want to just squish it dead on my screen, as I'd don't really want to scratch the surface and/or leave some unsightly stains... but, argh!  stop walking towards the text area now, alright?!  Dammit... nooo..... not on to the image.... nooooo.... and now you're looking down at the little handwritten message I'd just put up.... please don't proceed to try and get up to any fancy antics with your likeness.... noo... shooooo! Scram!  Get off my screen dammit!)

CHI2016 - Sketching Papers, and General Discussion of Interesting Research Directions

The annual CHI (Human-Computer Interaction) conference is on this week in San Jose. As one of the "big + important" conferences in Computer Science research, it's always interesting/important to keep an eye on what's happening there to see if there any interesting things come out of it. So, I duly started checking out the accepted papers, before stumbling across the "sketching" section.

My first thought was, "woah... they have a section on interfaces for sketching tools?!", followed quickly by, "I wonder if there's anything of interest there...?" It turns out that there are two papers here, both of which fall quite squarely into the frame of the type and style of research that I love doing most (i.e. the "fun stuff" I'm doing with Grease Pencil + Pose Sculpting/Sketching, vs the empirical work I currently do for my PhD).

So, what were these papers?
1)  "Skuid: Sketching Dynamic Illustrations Using the Principles of 2D Animation"
2)  "Storeoboard: Sketching Stereoscopic Storyboards"


Wednesday, May 4, 2016

Texture Painted Cube Test - Palettes

Just a short turntable anim of a texture painted cube for fun this evening....



The story behind this:
I was trying to find a way to test the "Palettes" system in Blender (which I'd just only recently heard of). Apparently it's only for the texture/image paint stuff (?), so I went ahead and started texture painting a cube!

Lo and behold, a few random dabs of colour using my tablet later, it turns out to look pretty darned interesting! Hence the turnaround, and a quick BI render of it.


Sunday, May 1, 2016

GPencil Anim Test - "Curls"

While testing Antonio's patch for fixing the way that fills for concave shapes get drawn, I got inspired to create a little animation of some of these shapes in motion!



While testing the patch, I kept running into some issues with certain U-shaped filled strokes, where there would randomly be some extra triangles getting created. After drawing heaps of those recently, to figure out whether there were any trends/reasons for this to fail, I realised that they would look pretty awesome in motion.... So, I had a bit of fun + relaxation doing some straight-ahead animation with Grease Pencil :)


Thursday, April 28, 2016

Clearing the Backlog...

Just a little heads up: if you've been waiting to hear back from me about various things (patch reviews, etc.), hopefully I'll finally get around to clearing this backlog in a day or so, or over this weekend :)

I've just ended up being a bit busier than usual with my research work recently (trying to get an experiment done - recruitment is a PITA with lecture break + having to run people through one by one on the eyetracker, setting up all the data analysis, and updating all the writeups for all that stuff - and pretty much all of that needing to happen around the same time), so things have been getting a bit hectic around here.

In the meantime, hang tight, and I hope to have some nice dev announcements to make shortly when I get around to it! ;)

Pixar's GTC 2016 Talk - Viewport, Workflow, and Hydra

If you haven't already (and have 45 mins to spare), it's well worth watching Pixar's recent talk at the GPU Tech Conference (GTC) 2016, where they discuss some very juicy and interesting topics.


These include a very detailed look at their in-house animation tool Presto, and all the GPU/OpenGL4 viewport magic, workflow stuff, and the announcement that they're open sourcing their fancy viewport renderer (Hydra) as part of the USD (Universal Scene Description) release later this year. Exciting stuff!


Friday, April 15, 2016

CMake Rant

Arrggghh!!!   I wasted quite some time this afternoon tracking down a crash I was getting in one specific case, where it didn't make any sense at all that it was failing. After trying a lot of things to debug the situation, it only dawned on me quite late that it was the build system at fault here: that is, IT WAS CMAKE's fault. Again.

Why am I not surprised? Well, to this day, I still cannot trust that it's going to actually rebuild what I ask it to, when I ask it to, with everything it's supposed to be using. Heck, even finding out if it actually rebuilt the file or whether it skipped over it is not that easy (in short: it's output is a messy verbose dump of internal diarrhea).

Now, even if it did rebuild the file in question, it may have done so with the wrong settings.  Yay to "config first, then build".

Even worse though, is if it silently omits to add certain flags which you'd expect are included as standard-issue features, and requires you to actually manually add it in in every place where you might use it (*1).... The only way you'll know that has happened? After your code mysteriously keeps failing in bizarre ways, after several hours of debugging.

Gah.  And all that for two little buttons that probably won't be used that much anyway!

</end rant>

(*1 - To be fair, the flag-omitting is probably more of a design choice made in our cmake buildscripts. That said, it's a bloody annoying one if you don't know about it!)
(*2 - It's good to finally get this thing off my desk at last... It's been sitting around, blocked while I've had to work on other stuff, for the past few weeks since Easter....)

Saturday, April 9, 2016

Grease Pencil Fun - "Hedgehogs" Character Sketches

I had a bit of fun this evening doing some little sketches of my "hedgehog" characters using Grease Pencil (with Antonio's stroke quality tweaks, as found now in master). I gotta say, the stroke quality improvements really do seem to make a massive difference for making these strokes feel a lot nicer to draw with!

First up, introducing Mr Russ Prickles!


Russ' Briefcase - He works for Prickles Industries Ltd. - doing what, no-one knows...

I came up with the basic character design for these a few years ago while attending some particularly boring talks, while some of the characters/elements are ideas I've been toying with on and off for over a decade. They were originally going to be part of a little short film (or more specifically, the opening sequence of that) - with Russ hitchhiking his way home along a deserted, grass-lined moonlit highway, carrying his briefcase, back to his family in the hedgehog colony in the woods. Also, all of this was to have played out against the backdrop of Roger Whittaker's "Good Morning Starshine".


Sunday, March 27, 2016

Driver Workflow Improvements - "Property Eyedropper" for Quicker Setup, and Other Features

It's taken a few days of intense hacking and investigation, but late this afternoon I finally succeeded in implementing a new way workflow for setting up drivers that should help streamline the process. Many have been requesting a faster way of doing this for years and it's been on my todo list for a while now until I finally got around to it this Easter.

Here's a little demo of how this now works: