Under Pressure

December 5th, 2006 . 7 comments

When I worked on adding tablet support to GHOST, Blender’s low-level input system (alongside Nicholas Bishop and Andrea Weikert who did the X11 and Windows versions), one thing I had in mind was the possibilities not only in the obvious painting and sculpting, but in other more experimental areas too. I’ve got a few ideas sketched down about potential uses in the interface, for example imagine sliders that changed in precision depending on tablet pressure, or a radial menu that uses the tablet tilt information to bias what option is selected.

A tablet, especially one that supports tilt sensitivity like the Wacom Intuos, is almost a poor man’s 3d input device. With X/Y location, pressure and tilt, you can derive a lot of information about the pen’s situation in 3D space. This is interesting to me, because unlike real 3D input devices like spaceballs (which I don’t own), many CG artists have tablets, so input methods involving a tablet can involve a much larger audience than the more obscure devices, and so investigating it doesn’t feel like such a waste of time :).


Anyway, the idea came to me that Blender’s built-in game engine could be very useful as a quick, interactive means of testing these different ways of interacting with a tablet. Over the weekend I had a hunt through it’s unfamiliar source code, and hacked together a patch that adds pressure and tilt support to the game engine’s mouse sensor (available here). It exposes these variables through Python and works very similarly to the way you currently get the mouse’s position, with three new functions: getPressure, getXtilt() and getYtilt().

So of course I had to do a first test! This one is very simple, just visualising the pen 3D space as a virtual pen over a virtual tablet surface. I mapped the pressure to the ‘height’ of the pen along it’s own local axis, and the tilt data is changing the orientation. Watch the video I recorded on a digital camera and see for yourself! The .blend file for it is here, but you’ll need to build Blender with my patch for it to work.

After doing this I’ve got a few more interesting ideas for things, such as FPS-style mouse navigation with the tablet but with tilt controlling other things like roll or turning around, or perhaps a marble madness style game where you use the pen to tilt the surface that the marbles roll around. I’m now also curious to combine this with my PowerMate for some really interesting interaction. Let me know if you have some other ideas that could work too! 🙂

Game Engine tablet test

§ 7 Responses to Under Pressure"

  • matte says:

    Brilliant. Always wondered when those attributes would make it into 3d. The intuos1+2 advertised ‘dual track’ support, ie 2 pens on the tablet, which seemed an ideal way to manipulate 3d objects, but typically no 3d app ever supported it. Hell, I didn’t even see a 2d app that supported this.

    Can’t wait to see where this all leads!

    -matt

  • Calli says:

    Great! I planned ling time to dust off my tablet, now I have to 😉

  • Johan says:

    I’m not a blender user. But does blender support spraying on (or the inverse sucking out) modelling clay onto an object? Maybe this tool could facilitate that? Not sure how (clicking the pen?) .. anyway .. it may make sculpting of details easier.

    About dealing with pen presses when modelling … there will need to be a way to adjust the local hardness/malleability of the surface material so that the surrounding surface deforms realistically or without affecting areas that shouldnt be.

    Hope I made some sense.

  • ibkanat says:

    Nice… I have been tempted to get the new space navigator http://www.3dconnexion.com/products/3a1d.php

    There is a patch for that in the tacker right? I have a tablet coming for Christmas from my wife.

    Couple of questions….

    the tablet isnt wacom will it work? Could the space navigator work at the same time as a tablet?

  • Colin Levy says:

    How cool! I find it remarkable that you can have a concept like this and just figure out how to make it work. Maybe it’s time to start learning python.

  • Matt says:

    Hi all,

    Sorry to reply late, I’ve been busy and sick.

    Thanks for the kind comments!

    matte: Hey, you stole my name!

    Johan: Kind of, yes, with the new sculpt mode coming in the next release. If you’re not familiar with it, I presume there will be more info on that, come release time. That’s the reason the tablet support was already added to the rest of Blender, for the exact purpose that you mention, though it only supports pressure sensitivity, not tilt (yet?).

    ibkanat: Yeah, I have no idea about the space navigator, how it would work with a tablet (probably ok, it’d just be a matter of getting the right data from each source) and whether that patch even still applies. I don’t have a space navigator and don’t really plan to get one soon, so I can’t help you there. Many people have tablets though! And yes, the above code should work for any* tablet, no matter what brand. Though the capabilities exposed in Blender (pressure, tilt, etc) will depend on the capabilities of the tablet itself. Many of the less expensive tablets don’t support tilt sensitivity.

    *I’ve heard reports of some lesser known tablets using their own specific drivers under Windows, rather than supporting the ‘WinTab’ standard, which is what Blender uses to communicate with the tablet in Windows. These tablets won’t work in Blender unfortunately – blame the manufacturer!

  • ibkanat says:

    thanks

Leave a Reply to matte Cancel reply

Your email address will not be published. Required fields are marked *

What's this?

You are currently reading Under Pressure at Matt Ebb.

meta