So apparently Sketchfab has these weekend contests and I thought I’d give it a try and squeeze a quick sketch in today, but once again miscalculated the whole endeavour. Initially, I didn’t want to go beyond Dynamesh, but after I was done with the base, it just made more sense to do it that way, and once I was there, I felt like halfway decent UVs might be a good idea, so I lost a lot of time for the texture and didn’t manage to get him posed. Sad panda :(
Today I tried out the Sketchfab exporter for Maya. It’s an old model, that I made long before I had a clue how nerve wrecking bad topology can be for skinning. I hadn’t rigged the character until now, and holy shit, without ngSkinTools, this would have been a nightmare.
The base is borderline embarrassing too, but it’s not really a full blown presentation shot, so I didn’t want to spend too much time on it. I probably should have used panel loops or insert mesh brushes. Well, next time. Until then, no more radial symmetry for you, mister.
I haven’t done any modeling, scripting or rigging work lately, I’m mostly doing particle FX at work right now, but I saw the ZBrush plugin for Sketchfab the other day and really wanted to try it out. So here’s for nothing. Sort of dinner break doodle. Sloppy sculpting, sloppy polypaint, sloppy pizza.
A while ago, I started working on a (sort of) joint based cloth simulation workflow, for those cases where you would like to have realistic cloth animations but your platform doesn’t support actual cloth simulation.
I used the well known Maya nHair Spline IK trick, with an additional component constraint on the CVs of the splines, so they’d behave like a closed surface. The whole thing works surprisingly well, but it’s not very animator friendly, because nDynamics.
I have a couple ideas for how to work around it, but in the meantime, I figured, I could try to make a more animator friendly Rig that is more lean than the usual FK Ctrl mayhem and can replicate the look of simulated cloth.
This is my first approach. I use Spline IKs to drive the joint chains, every CV ring is attached to a cluster, which is driven by the circular control outside (parent + scale constraints).
The animation is hand-keyed (pretty roughly), but I’m sort of satisfied with it. The problem I ran into however, is that I don’t have control over the silhouette of the skirt segments – that is, I can only drive one segment as a whole, not the individual joint chains.
I think I found a solution for that already, but I’m still dealing with some double transformation issues there, but hopefully I’ll have them figured out soon.
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.
Before finalizing anything, I wanted to make sure that the inside of BigBird would make at least some sense. I felt really bad about the V8 engine I gave him first. It worked in a rough blockout stage, but it’s not really consistent with the rest of the look, so I replaced it with a Go Kart engine and put in some tubes and wires as well. I hope it doesn’t show too much that I have no clue about engine mechanics (but at least he’s got an oil and gas tank and a battery now).
I also gave him the thumb back. Emus don’t really have those, but I thought it would be fun if he could use his feet to grab and lift objects, so they’re going to be stored in a folded up position during mobility mode, and fold down for manipulation mode.
Besides that, I’ve put in BigDog’s debug terminal, because I really like that dim glow behind the paneling and changed the position and proportions of the legs to be more in line with actual emu anatomy.
I added some more railings and frames to support the silhouette and started working out some of the joints. I also changed the feet to be more in line with actual emu feet, but I think I messed up the leg positions a bit, and he looks a tad off balance now.
I haven’t done too much to the legs yet, because I think I’ll give him those waterproof stockings that Boston Dynamics’ LS3 AlphaDog has (design choice of course, not laziness, ahem). Other than that, I think I’m more or less done with the blockout, I’m pretty satisfied with the silhouette and will start replacing the individual pieces now, and add all the small cables, wires and parts.
I needed a little creative break from humanoid characters, so after watching emus and Boston Dynamics videos on Youtube, I had a bit of an epiphany, and here we go, the Berlin Dynamics BigBird, an all terrain autonomous cargo drone. I’m in the early blockout stage, but I think the overall design comes across.
I thought I’d try a somewhat new retopo approach for me. Usually I just retopologize the entire sculpt. This time however, I did it for individual parts of the sculpt, threw a quick UV layout on the new meshes and made some test bakes.
I’m nowhere near texturing him yet (except for the head, which is a solid starting point, I think), but put some flat colors on the shaders. I haven’t really thought about a color scheme yet, so they are very likely to change.
I also tried another new thing for me. Using ZRemesher for more than just retopologizing sculpting geometry. It seemed tempting to me to let ZRemesher handle the folds, and then touch it up a bit in Maya, but I’m not too happy with how some of the geometry came out. This will require some more testing.
After the head retopo was done, I spent a couple hours trying to improve the head. Here’s the result, along with a first rough color pass.
Edit: I also did a quick test bake and hooked it up to the Autodesk Ubershader. The diffuse is basically just the (somewhat improved) ZBrush polypaint with AO and Cavity on top. The Spec map is just hacked together for the sake of testing. Tesselation is turned on.