Sunday, April 30, 2017

Photos from April



Tuesday, March 28, 2017

March Music - Musescore 2 Experiments

Over the past few weeks, I've been getting quite a lot of interesting melodic snippets popping up at random times (and much more frequently than in the past). So, I've taken to firing up Musescore and jotting them down while they're fresh (and also, since a lot of these just sound so neat when done this way). Plus, earlier in the month, I finally upgraded to version 2.0 at last, which has brought with it a lovely new Soundfont (based on Fluid; I especially love the Piano and Marimba sounds on this; the Flute could still be better on long notes, and I still don't dare to touch any of the Strings as they typically sound dreadful XD); that and the awesome "Continous Mode".

Here are two of the more "complete" pieces I managed to bash out using this (today's one is first, followed by an older one from week or two ago).




Monday, March 13, 2017

Breakdowner/GP Sequence Interpolation Ideas

While working on some recent improvements for the Breakdowner, I started daydreaming (as you do, when in full feature development mode, which is one of the things I love most about this process/work ;) about some ideas for how we could make these things even more awesome than they were already.

In case you haven't kept up with the latest developments in Blender, there are now two sets of tools with Breakdowner-like functionality:
1) The Pose Breakdowner (and the related "Push" and "Relax" tools)
2) The GPencil Interpolate and Interpolate Sequence operators

This post looks into what we could do for both of these - first common features, and then stuff that's more specific to the GPencil case (since it's newer functionality, which also has heaps more room that we can explore).

Oh, and just in case/before any gets confused, THE FOLLOWING CONTENTS OF THIS POST ARE ALL ENTIRELY HYPOTHETICAL/IDEAS ONLY. There's no guarantee than any of this will be implemented, though I'm curious how well they would turn out if I did :)


Saturday, March 4, 2017

Start of Autumn - Music

Here's a bunch of lite tracks I recorded this afternoon - the first weekend of Autumn here (sob). It's been a sunny (if mild) day, though it's clear that Summer has ended...



My favourite is the second one (especially that light rhythm in the background), as it echoes some of the cool music out there in various non-Western-classical music traditions (i.e. all the very cool stuff)

PS.  After a few long weeks, I've finally finished data collection on my last experiment for my thesis. Yay!

Wednesday, February 22, 2017

Port Hills Fires - Violin Layering Tracks

Last week, a series of out of control wildfires raged across the Port Hills to the south of Christchurch, destroying houses, sending massive plumes of smoke billowing into the sky (and visible from space), and leaving thousands of hill-suburb residents temporarily homeless (after often getting only minutes to evacuate).


Feb 22 - Violin Layering Tribute

Today marks 6 years since the devastating Feb22 quakes here in Christchurch. Here are a bunch of tracks I recorded to commemorate the event this year.

Saturday, February 11, 2017

Crazy Ideas Folder: OpenGL Renders in "Background" Mode via Mesa GL?

This evening, I caught a mid-conversation snippet that had me thinking, "Is that really so? I'm not so certain about that..."  (or perhaps my supervisor's frequent utterings during our meetings have been starting to get ingrained in my mind XD).  Anyway, the quote in question was:

"it's not possible to do opengl render in a background mode"

Really?!  I know it's not **currently** possible to do an OpenGL render in background mode, and perhaps there are limits to what we can achieve (especially if you're not allowed to spawn any windows and/or there's no graphics card on the rendermachine).

However, something from the vague hazy memories of the past tell me that this is not a cut-and-dried certainty.


Wednesday, February 8, 2017

Quick Tip/Hack: Getting MSBuild to Stop on First Error

One of the most annoying and common problems (as a bit of Googling soon reveals) when compiling a big project with MSBuild (multi-process) is that even if compilation fails on one of the files (due to a syntax error or some other error condition), it will keep compiling the rest of the codebase. This is bad for two reasons:
  1)  You won't be able to link the program in the end anyway. At least in my experience, even if you could link the program (and that's not a given in every case), it doesn't make much (if any) sense to have an unreproducable chimera of old + new code (though exactly which bits they are you probably won't remember a little down the track)

  2)  You'll probably have to recompile all the code again once you fix the error anyway. More often than not, I've mainly had these errors show up when changnig code in a popular header file that large swathes of the program used. So, if a compile error like this showed up, the computer would have already wasted a lot of time/energy compiling a lot of files (many of them unsuccessfully too), work that would have to be redone when you've fixed the error anyway.

After a few false starts, I ended up finding a neat (if somewhat evil) little hack to solve this problem once and for all.


Tuesday, February 7, 2017

Custom MSBuild Loggers for Blender Devs on Windows

Given that it was a long weekend here in NZ, I decided to take a little time off to work on a little "weekend project" I'd been wanting to work on for ages. (BTW, it wasn't the only weekend project I worked on this weekend, but it's the only one that will be of much interest to anyone else :)

Here's an obligatory screenshot showing the results of my work.

 The "cleaned up" Blender build output as a result of my project: blender_msbuild_loggers

Saturday, February 4, 2017

Blender Dev Updates - 21 Jan

(EDIT: I originally meant to post this a few weeks ago, but it's taken a while to get around to finishing the demo materials included here... but, PhD work takes priority, again...)

This week I took some time out from my PhD work (argh, creating questionaires is such a pain) to get through a bunch of simple new features I'd been meaning to code during my break... that is until continuing my holidays took priority ;)  But with the announcement that we would be pursuing a 2.79 after all, it was time to brush off the plans and get these features in.

Most of the new features are Grease Pencil related... (Some but not all of them can be seen here)

But, there's also stuff for all animators too...


Wednesday, February 1, 2017

After the Rain

Here's one more set of photos to clear some of the backlog of photos I'd been meaning to post here (I'll leave the sunsets for another day, since there've been quite a few of those recently :)

There's a magical moment shortly after the rain has cleared, when the flowers in the garden are bathed in a fesh coating of fine little glassy crystals...

Seagulls up Close

A few weeks ago, I had a lovely walk around the CBD for the first time in ages. Along the way, I found a nice shady spot on the riverbank to sit and watch a flock of gulls preening, sleeping, and otherwise doing a whole lot of interesting things you don't often get to see them doing. For instance, who would've known that aside from squaking aggressively and trying to steal your lunch, these things can also look kindof cute - especially when they stand on one leg looking like a moggy with a bad case of fleas!

From certain angles, there's a bit of cuteness in there... Somehow, this shot reminds me of Piper. (I think it might be the rounded head and the placement of the two dot-like eyes on there that does it)...

The Sea - On an overcast day

With the lack of kites to photograph, I ended up turning my attention to the waves crashing upon the shore (as seen from the pier). In recent times, everytime I've headed out to the coast, I've been really quite captivated by the magesty and power of the waves...


Kite Day 2017

Over the weekend, the annual "Kite Day" was held at New Brighton beach, on a warm but overcast summer day.



While in previous years, there would be large displays of a variety of massive novelty kites, this year, they were in short supply... As I later discovered, there was apparently too little wind to get them up into the air that day (despite the day before, and day after being really windy...). However, in place of the large display kites, it was fun to see so many families out and about having fun trying to fly their own kites :)

Thursday, January 26, 2017

"Regal" - Orchestral Tune

One morning, a melody came to me while having breakfast, so I spent a few minutes transcribing it. The whole thing kindof snowballed however once I realised that the French Horn can't actually play some of the higher notes I'd been building up to, hence the introduction of additional instruments, leading to horn + trumpet + strings (vln 1, vln 2, vla)  + flute  (added in that order).  Apart from the crappy quality of the synthesizer (blame the MuseScore folks :P), the following clip captures what I set out to achieve that morning quite well I think (plus, it turned out quite nice too IMO :)


Violin Layering Highlights - January 2017

Over the past few weeks, I've continued playing around with my "Violin Layering" series of improvised recordings. Here is a collection of some of the highlights from this month. Hope you enjoy :)

Sunday, January 8, 2017

Voice Controlled AI Devices - A Reaction Post

In response to the article about voice-controlled boxes being activated by a news item about how a kid managed to buy a dollhouse + cookies off Amazon via the voice control.

Interpreting sound has never been an easy thing. Not for humans, and definitely not for computers! If you actually think about it, it's not that hard to imagine how hard it is for a computer to understand speech and sounds. For example:
   * How many times have you had trouble understanding someone's accent? Or had a misunderstanding because you misheard someone's muffled speech over a noisy/muffled/faint/crackling/unreliable phone?  Well, guess what, for a computer doing voice recognition, the only input it's got is the sound coming in from the microphone... which of course is mixed in with everything else going on sonically in that environment (e.g. TV's, smartphones, gaming consoles, music players, rangehoods, kitchen equipment, aircon, running taps, open windows/traffic-noise/neighbours, bickering flatmates, etc.). And that's not to mention that the users may be out of range of the microphone, or the microphones may be cheap trash bought for bargin basement prices, and have been wired backwards...

   * How many times have you been watching a film or tv show, and found yourself lurching for the fire escape as a siren sounded on screen? Or reached for your phone, only to realise that it wasn't your phone ringing, but that of the lady at the next table? Or perhaps you've responded to someone calling your name, only to find that a stranger had been calling another stranger, and not you (the now slightly embarrassed sucker trying to pretend that you didn't just not-answer to your name). Clearly, even us humans get it wrong quite often, but at least we often have the benefit of *context*, the ability to use our other senses to diambiguated the situation, and a few other "on-the-fly" techniques. (This probably goes some way towards explaining why there's a reason that people like me really don't like answering phonecalls or having to call people on the phone...). Anyways, if it's hard for us humans to get this stuff right, expect the computers to have an even harder time to disambiguate all of this!


Inspired by all this, I wondered what a "day in the life" of one of these voice recognition boxes would be, when deployed in a domestic environment that's not kindof far from the "idealised model-human" fantasy that designers often find themselves falling back to... The answer was that it would feel like they were a lost and isolated operative thrust into a war zone - "hostile enemy territory"...

First Steps with Rust

A few days ago, I suddenly got the urge to download Rust and have a little play around with it. Truth be told, I've been hearing some good things about it, and seeing as they now have a stable version out, I felt it was finally time to give it a little play around.

So far, I've played around with it for about 3 days. There's still a lot I don't know about the thing, but at the same time, I now have a decent feel for some "everyday aspects" of coding in this language.

Saturday, January 7, 2017

2017 Kickoff - Holiday Inspirations

We're a week into the new year now, and as most of us return to work from our holidays, I'd like to mention a bunch of interesting stuff I came across in the second half of my holiday (i.e. the stuff that came after alternating between lounging around like a vegetable and running around going to exotic locations for fun). I've gotta say, it's been great having a break!