Interesting control mechanisms: Cars, Rockets and Choppers

Props to @infiniteunity3d for tweeting this. This is an example of using a different control mechanism to enhance a virtual experience. In this case it is slot car racing. It is built in Unity3d which once again shows the power to just be able to get on and try out the ideas rather than battle the middleware. (I am sure it had it moments though 🙂 )
Slot car racing is a very tactile experience, the friction of the pickup on the rheostat and the precision of trying to get just the right speed for a corner is the charm of slot racing. Scalextric was a big part of my childhood.

AlabSoftware have hooked the controller up to a set of slot racing cars. They did not just stick to a top down view either it is a full 3d model (as that is what Unity3d is very good at indeed).
Nearly the first thing I built in Second Life was a slot car racing system. I say nearly because other things like the tennis got in the way. My initial thoughts were to build a construction set in a world that was by its very nature a construction set. Being able to provide limited resources (track pieces) and specialized types of car etc had the makings of an economy and toolkit within the economy and toolkit.
There is a definite movement to more haptic control interfaces, none more so than the blend that has been created and released on the world at CES 2010 with the Parrot AR helicopter. A wirelessly controlled flying toy/copter that you control with your iphone and that also provides video and data feedback to you with various headsup displays and tricks. It is a form of AR, but like most AR the term gets used for all sorts of things.

Sitcking a camera on a vehicle is of course not a new thing DCJ put a wireless camera on his rocket at the launch day we had back in 2008 but the Parrot AR Drone is a very nice evolution and combination of technology and design

Fresh Decade Fresh Fish

I have a mini side project for an iphone application that I want to get submitted as soon as possible this year. Mainly this is to test the process. It has caused me to start doing some things that are clearly not my forte. i.e. Graphic design. I have no problem using any of the graphic design tools, and I really quite enjoy them, but my results are always…. well… meh.
For the app I needed to create some original visuals, as for a proof of concept I had used some 3d models from elsewhere just to get a feel for this. What I was aiming for was something fishlike.
This is what I have got too so far using the wonderful Cheetah 3d on the mac.
Now bear in mind I am a techie not a visual designer, but I did have to use a few things here.
I created the mesh from initial prim shapes in cheetak, then joined and imported them into a single mesh.
I created a set of character joints, the blue skeleton elements showing then had to remember ho to create the skeleton tag on Cheetah and drag it across to the properties to bind the skeleton to the mesh. (All this is bread and butter stuff to a good designer and animator of course!)
The texture, such as it is was using photoshop elements to create a stained glass window effect, then create another one one top of that in order to get some randomness and mess it up a bit.
Then I created some poses, remembering in Cheetah to create the pose once the root node for the pose had been selected. It was then a case of moving the joints around and saving each state.
Finally in Cheetah I created some animations, setting poses and timelines and key frames before saving the thing.
Then sparked up unity Iphone and dragged the poor fish like thing into the environment. Here the animations just played.
Hit publish and Xcode gets sparked up, the app gets deployed and running on the test Iphone.
Not a piece of code written, all config and clicking.
Of course now I can do what I know I can do. Write code to make the things happen in the way I want them too.
I will of course have to revisit the “Fish” maybe put some more bones in, try some smoother textures or try and draw it as one mesh not a bunch of lumpy prims. The trouble is I know it will never look as good as someone who really does this stuff.
Doing this though, and I recommend all tech and biz people give it a go in some for, does give you an appreciation of the visual design skills of those around you. I think too often it is taken for granted. I think the same can be said for good code though. The things under the covers, such as in this tool chain with the Mac OS, Cheetah 3d, Unity 3d and the Iphone OS none of which got in the way of the idea.
Trying to make things in different domains to ones we are used too, with tools that we are not skilled in using is a great way to understand what others do, what is good and what is mediocre. “Web 2.0 is Web Do” extends to many more things. Its a new decade give something a go, just so you either know how hard it is or you may find a new talent 🙂

This looks very promising – A World For Us Unity3d meeting rooms

Henri just commented on my previous blog post about Unity3d and Opensim. It would appear we have an interesting to player in the game now.
A World For Us have produced a web based virtual world meeting application using, amongst other things, Unity3d for as the engine. I had a very quick look and got a good initial guy feel. Partly this is because I know and appreciate what Unity can do. Whilst there will be lots of questions (to be answered in depth later) about whitboards, web sharing, physics and dynamic interaction etc, this just worked. Voice worked, chat worked, I did some avatar customization (no green hair though 🙁 ) I sat in a chair, I zoomed into a presentation and moved through it. Most of all it ran on my Mac! A key point about Unity is that it does not care quite so much as many of the windows based plugin’s.

Picture from A World For Us
A world for us

Avatar throwing – Bonfire night

I am not sure how I feel about this, but as I have been investigating how to turn my Evolver avatar into a Unity3d string puppet and then drop that on the iphone as part of an education in pipeline and development I have ended up with quick demo that works on the web.
In this demo you are able to click the spheres that that are above the avatar, each toggles between 3 modes on each click. Initially the state of each is off. When clicked once or twice the spheres then respond to the arrow keys or wasz game keys. The two active states merely change which direction in/out up/down the spheres will move which let you swing the avatar around. The middle sphere is connected to the spine, the rest to arms and legs.
I am experimenting with types of connection and the various weightings on the joints but I thought I would leave this lying around on the web.
So feel free to throw me around 🙂 Its a bit bonfire night themed, reminded me of penny for the guy as a kid.
Unity3d puppet

More iphone Radgoll experiments

I carried on with a few ideas of what to do with the ragdoll version of my Evolver avatar and I ended up with this interesting behaviour. Which is sort of where I was heading. It is a form of emergent behaviour caused but the avatar being suspended by the two top spheres using a form of hinge. This combined with gravity and the bones and joints in the avatar lead it to create this dancing toy effect that is different each time it is run. Next is to wire the strings up to touch controls and then I have a full dancing avatar to play with on the iphone.

Iphone dancing on the ceiling

In my continued look at the quick things that can be done with a Mac, and Iphone, unity3d and some content (in this case my Evolver avatar) I thought I would see if the bones and animation worked ok and performed ok on the Iphone.
I was not being overly precise about defining the mappings of the ragdoll, but I did click on a few Kinematic check boxes to see what would happen.
This was the result. It does indeed animate itself, there is nothing I have put in other than asking for joints and physics it just dances away to itself.

It is amazing, the lengths we used to have to go to to make even the most basic animation happen, morphing 2d shapes on commodore 64’s and alike.
It feels to me that we have the potential for a huge bedroom coding movement now again. This was so quick to build and deploy that its hard to see why we all are not doing it.

And there he is. Evolver to Unity3d and the web

Fatal error: Uncaught Error: Call to undefined function split() in /homepages/41/d160417292/htdocs/wsb4021773801/blog/wp-content/plugins/WP_UnityObject/WP_UnityObject.php:56 Stack trace: #0 [internal function]: WP_WriteTags(Array) #1 /homepages/41/d160417292/htdocs/wsb4021773801/blog/wp-content/plugins/WP_UnityObject/WP_UnityObject.php(23): preg_replace_callback('/(\\[WP_UnityObj...', 'WP_WriteTags', 'This is a very ...') #2 /homepages/41/d160417292/htdocs/wsb4021773801/blog/wp-includes/class-wp-hook.php(292): WP_ParseEntry('This is a very ...') #3 /homepages/41/d160417292/htdocs/wsb4021773801/blog/wp-includes/plugin.php(212): WP_Hook->apply_filters('This is a very ...', Array) #4 /homepages/41/d160417292/htdocs/wsb4021773801/blog/wp-includes/post-template.php(253): apply_filters('the_content', 'This is a very ...') #5 /homepages/41/d160417292/htdocs/wsb4021773801/blog/wp-content/themes/narga/content.php(21): the_content() #6 /homepages/41/d160417292/htdocs/wsb4021773801/blog/wp-includes/template.php(732): require('/homep in /homepages/41/d160417292/htdocs/wsb4021773801/blog/wp-content/plugins/WP_UnityObject/WP_UnityObject.php on line 56