Menu

I said I’d update more often. I lied.

Earlier this year I started a new job, and so, once again, five months passed without any update to my blog.
I didn’t have too much time to work on my own stuff, hence the lack of updates. I’ve been trying to adjust my scope a little, so here is something I started working on a while ago (but haven’t finished yet). It started out as a lunchbreak ZBrush sketch, without any clear goal in mind, besides “well, make a zombie, maybe?”
Because of an overabundance of zombies, I dropped the idea and moved on to “I don’t know, what if he’s some kind of jungle creep”. Still not finished, obviously, and it’s been a couple weeks since I worked on him, but it’s better than nothing, right?

Back to that (in lack for a better word) new job of mine. I started out making character models, but, due to necessity, had to do some more rigging and technical work as well. I finally got around to start learning Python, which is something I had on my agenda for quite a while now, and the circumstances rekindled my interest in rigging.
I never really got into it before, in a professional scope, because I have the tendency to be a bit too, uh, exotic with my rigs. This, however, is actually a good thing for once, because the project I’m working on requires some exotic workarounds here and there.
Something I can share is this system I’m currently working on.

I’ll be lazy and just copy&paste the description I’ve put on the Vimeo page:

I’m currently working on a script that adds a procedural wave motion based on a sine deformer on top of hand animated FK controls. The goal is to help animators to spice up their animations with a bit of secondary overlaps on things like tentacles, hair or any kind of dangly bits, while giving them enough freedom and control over how they want to animate the general motion of the joint chain.

The sine deformer has an expression that ensures that the offset value automatically loops, and a point on poly constraint to modify the Y-translation of a set of dummy objects. Another set of expressions converts the translation values to degrees, which I feed through a double multiplyDivide chain to locally modify the amount of the rotation with a multiplier value, and another weight value to blend how much of the procedural rotation is added to the FK controls.