Multitouch in Unity?

For some reason, this popped into my head this afternoon… and I don’t really know what prompted it.

We should add multitouch capability. This is probably too fringe for built-in support from UT, but I would imagine that it would be a useful plugin… I am correct in assuming that this could be implemented with a plugin?

I’ve played with TUIO (http://reactable.iua.upf.edu/?software) clients in Quartz Composer and Flash. It seems like a Unity client might be a good start.

We could also look at blob-tracking libraries. OpenCV (OpenCV download | SourceForge.net) supports this. There is TouchLib as a start too, but it looks Windows only at the moment: http://nuigroup.com/touchlib/

I’m just picturing that Unity would be a really cool environment for developing content for table-based multi-touch displays. Has anyone else gone down this road? I saw a wish list request… but nothing where somebody had implemented something in Unity, I don’t think.

I’m really interested in this subject. Any further developments? I’m enduring Unity Tutorials, while shopping for the components to build my first multi-touch projector enabled table. I’m really looking for a lib or resource for mutlitouch nav in Unity3D. Any info you could share would be much appreciated.

Hi,

Find attached a quick implementation of the C# TUIO Library from reacTIVision, as a (very) basic tuio client in Unity.

Enjoy!

j.

PS: We’re throwing a workshop on the topic tomorrow at the Reboot10 festival (http://www.reboot.dk), drop by if you can!

81488–3155–$tuiounity_294.zip (531 KB)

otee might as well implement this along with the iPhone port - creating a unified API for multi-touch.

I have actually played around a lot with both touchlib and reactivision for other uses, and I must say I dont think either will ever become a standard in future multitouch setups. The demands for ambient necessaries are just too high in optical tracking setups.

That being said, it would be great to have some sort of inputprovider embedded in Unity, so you could switch between various dll’s supplying Unity with a translation and what-to-do with multiple coordinate inputs - this is the approach we’re using at the moment in WPF. We can simply switch between hardware (driver) in a xml-file and then it wraps the inputs to a generic output - that being Nexio, Surface, TouchLib (TUIO) or whatever…

multi-touch is cool but G Speak is way cooler. using OSC and some c-java-etc… or my preferred method quartz composer can turn just about any multi-touch, HID wii…etc… into a input source for Unity. if you just attach lets say HID input in QC to a OSC send then use the local loopback or network to get the values into Unity, you will not have a headache trying to find drivers and stuff for your HID joy stick. im using some of the Multi-touch principles meaning computer vision and optical flow to control unity with a web camera. no need for fancy IR LED, DI, FTIR setups.

Could you, by any chance, give us pictures/code/videos/demos of any sort other than text of what you’re doing?

(Oh, and thanks for bumping this thread. It’s pretty interesting)

I have created a plugin for Unity that supports the PQLabs multitouch screen. I was waiting on a cool demo before announcing it. If anyone has a PQLabs screen and wants to try the plugin out, let m eknow.

:shock: My university (www.upv.es) is planning to buy a PQLab Screen and I’m testing Unity3d. Would be fantastic if you can share your plugin to enhance our project. thanks!

<Mod: this message looks a bit like spam with all the links and Multivitamin stuff, but don’t worry - it’s actually a real post!>

bliprob, hello there!
The company I am working at ( Vitamin Group with MultiVitamin ) is working on MultiTouch enabled applications actively.
One of our last efforts was using MultiTouch with Art projects ( ArtMultiTouch )
PQ Labs are our hardware supplier partner.
We are to decide what is going to be the middleware for our next offline/online project, Entertainment MultiTouch.
Chance are it’s gonna be Unity3D, so could you please let us see your Unity3D MultiTouch plugin?
We will test them with our G2 50" screens from PQ Labs and report the results.

just stubled again on this posting. If you are still following this thread: uniTUIO is similar to Jorgens implementation (which is cool, thanks Jorgen!), but since is a bit newer, it will offer some more possibilities…

Cheers,

I suppose that’s uniTUIO you have mentioned, Sandor.
What are the similarities and differences between those two?

yes it is uniTUIO i am talking about. It would be too long to compare them here, but since uniTUIO freely available and OpenSource, you are invited to test it out. If you have questions - please feel free to post them here on the forums…

Cheers,

Alright, so uniTUIO is freeware OpenSource project, alright.
Does it support Windows 7 WM_TOUCH messages and devices based on that protocol, or TUIO protocol is the only one supported by uniTUIO?

as the name says : uni + TUIO :slight_smile: the windows touch protocol is working only on windows - we are trying to keep everything what’s possible cross platform - that’s why we are using TUIO as a protocol. Beside that TUIO is supported by a lot of the camera based vision systems (like BBTouch or the new xTOUCH (promo: look for them also on the www.xtuio.com site)). But you can have a look at the site of Martin Kaltenbrunner (the godfather of TUIO and the Reactable - www.tuio.org). There you can find a solution for using WM_Touch enabled hardware via TUIO…

Cheers,

Hi bliprob,

i’m interested in this plugin - is it still available?

thx gue

since unity 3.4 the Windows 7 Multitouch capabilities can just be used from within unity through the same Input.touches etc as on mobiles.

Hi, I am trying to use trough Input.touches on Unity 3.4 as you said, but no success. There is some option/setup to be able to use this support? Either outside (Windows Seven) or inside Unity?

I also couldn’t find any announcement on 3.4 roadmap or anywhere for this major upgrade!

I’d also like to know if anything special needs to be done to get this to work as there is no documentation (or examples) available that I have come across.

I’ve tried using touch input in Unity 3.4 via a Wacom Tablet, NextWindow touchscreen overlay, and a Mitsubishi driverless Windows 7 compliant touchscreen - none of which register any touch information inside Unity.

Has anyone successfully used Windows 7 Touch Input in Unity 3.4?

I believe Unity fixed the OnGUI() touch compatibility problem with Windows 7 compatible touchscreens wit the 3.4 release but it seems from my preliminary testing that Unity still hasn’t included support for MultiTouch under Windows 7.
Input.multiTouchEnabled returns false on my W7 touch system and I don’t see the equivalent of iPhone input or AndroidInput for W7 in the API.
Can someone from Unity confirm this is still not supported ?