[sharing is Fantastick] Max Multitouch Framework for Fantastick (iPad, iPhone..)

Aug 25, 2010 at 7:55pm

[sharing is Fantastick] Max Multitouch Framework for Fantastick (iPad, iPhone..)

[MMF-Fantastick] : Max Multitouch Framework for iPad, iPhone & iPod-touch + Fantastick

if you have an iPad, an iPhone or an iPod-touch, you’ll probably enjoy it ;-)

I’m happy to share this “framework” for Max & Fantastick.
(Fantastick is a free app for iPad, iPhone & iPod-touch : http://pinktwins.com/fantastick/ )

MMF-Fantastick is an extension of MMF (Max Multitouch Framework) : a set of abstractions to control max user interface directly within a multitouch screen.

MMF-Fantastick will draw on your iThing (thanks to Fantastick) a representation of all named UI objects that are visible in the presentation mode of your Max patch, and let you control them directly from the multitouch screen of your device.
It’s really easy to configure, fast, bi-directionnal.. and free !

have a look at this video :

http://www.youtube.com/watch?v=tfvEV1zcAjQ

- first, install and configure Fantastick on your iPad/Phone/Pod (http://pinktwins.com/fantastick/ )
(test it with the maxhelp patch)
- download & install MMF-Fantastick from http://code.google.com/p/mmf/downloads/list
(copy it anywhere in your max search path)
- open MMF-Fantastick_template.maxpat
- multi-touch your iThing
(and if you test it on an iphone and love it, run out to buy an iPad !)

–> Fantastick works MUCH better with an ad-hoc WIFI network, without WEP encryption

requires Max 5.1.4 ;
you’ll probably need to download & install manually lattest version of pattr object from http://cycling74.com/downloads/incremental/

enjoy !

Mathieu

________________
Mathieu Chamagne
mathieu.chamagne@gmail.com
http://mathieuchamagne.com

http://www.maxobjects.com

#51985
Aug 25, 2010 at 8:02pm

Thank you so much.

#186582
Aug 25, 2010 at 8:36pm

oh yes thank you so so much
cheers

#186583
Aug 25, 2010 at 9:33pm

Thank you!
But… it always crashes max. As soon as I touch something on the ipad – crash. All the gui is there but not controllable.

#186584
Aug 25, 2010 at 9:50pm

Crashes here, also. Log attached.

#186585
Aug 25, 2010 at 9:52pm

you probably need to download & install manually lattest version of pattr object from http://cycling74.com/downloads/incremental/ as your crash seems related to pattr…

Mathieu

#186586
Aug 26, 2010 at 7:20am

Awesome! Thank you!

#186587
Aug 26, 2010 at 7:45am

sorry, it seems that MMF-Fantastick 1.00 crashes current Max version…
(crash when sending a “bindto” message without argument to a pattr object ..)

it’s now fixed in lattest version : MMF-Fantastick_1.01

http://code.google.com/p/mmf/downloads/list

(with this new version, you may have some harmless error messages in your max window :
“pattr: (u143001526): failed to bind to target (::interface1::parent::MsliderH)
…don’t worry !)

Enjoy

Mathieu

#186588
Aug 26, 2010 at 8:48am

Yeah, now it works – no more crashing! And it’s super fast!

Do you know if it’s possible to turn on anti-aliasing for the OpenGL elements on the iPad? There is no reference to it in the Fantastick documentation, but maybe it can be done anyway?

#186589
Aug 26, 2010 at 3:40pm

this is literally Fantastic ! pun intended
kudos – great idea

I am all for helping out on the fantastick openGL interpretations of the max objects
e.g. i have ideas to sort the multislider in ‘bar’ style

plus it’d be good to reduce the z co-ord differentials (layering) so that there is no parallax error

maybe i’ve missed something but i would like to see landscape support

but this is such a powerful way to do the tricky stuff that made Fantastick so powerful
this route seems to be so responsive

wonder what jusu makes of this ? !

big thanks to mathieu for getting this out

~s~

#186590
Aug 26, 2010 at 4:17pm

Awesomek! Thumbs up, Mathieu!

#186591
Aug 26, 2010 at 9:11pm

Wow, that’s exactly what i needed right now…
That’s amazing.
many…

TTTTT..H…H…….A………N……N….K……K…….SSS………!
….T……H…H……A.A…….NN….N….K…K………S…………..!
….T……HHH…..AAA……N..N..N….KK…………..S………..!
….T……H…H….A….A…..N….NN….K…K…………..S
….T……H…H…A……A….N……N….K……K…….SSS……….!

This is the max external of the year. Or maybe the best external ever realized.

Note: In the READ_ME file, you write “bi-directionnal” ? : But changing ipad orientation does not change orientation of the objects… ?

Few features that would be welcome to me :

- Could we see the knob position of the [gain~] object on the ipad ?
- respect of the “ignore click” attribute : very useful when you use transparent multisliders, to edit only the one in front.
- multisliders style : “% Ghost Bar on Thin line” or “plain-bar” would nice, as the “thin-line” is hard to see under my finger on the ithing…

Notes about the wifi network:

“works much better with an ad-hoc WIFI network” : A fundamental advice.
In my case, fantastick is quite sensible to the quality of the wifi network : The drawing on the ipad is just dramatically slow when using the router network. (the fault on my spanish little white wifi box?) When creating a computer network, everything is fine.
And to notice again, when a lot of jitter/Usb-data-like-wacom-tablet are going on, the [mxj net.udp.recv] object you use, seems SO slow to me (low-priority problems) : In that case, use aka.datagram instead ( http://www.pinktwins.com/fantastick/AlternativeFSReceive.zip )

To jusu :

I find Fantastick a bit slower to draw stuff than Touchosc does for example, plus when i see all fast iapps that exist… Couldn’t you improve the graphics speed a little bit ? If this is a wifi issue, perhaps packaged-messages of differents “models”, seeded thru wifi at once, to improve efficiency, would help, or not ?

Thanks again to you both, jusu and mathieu!

#186592
Aug 27, 2010 at 12:32am

Hey!
Is this actually going to work also if max is running on a windows machine?
hm i guess yes right?
And, all gui objects are drawn on the ipad? live.Step, matrixctrl, waveform and all of those things not seen in the video?
thant would be too beautiful…

#186593
Aug 27, 2010 at 8:37am

Thanks for all theses nice comments :-)

> Note: In the READ_ME file, you write “bi-directionnal” ? : But changing ipad orientation does not change orientation of the objects… ?

bi directionnal means that you can control a slider in your max patch, Fantastick will reflect the changes.

orientation of the device will probably come.. in a future version :-)

> – Could we see the knob position of the [gain~] object on the ipad ?

sure ! …in next version !
(some objects are still missing, but are on the to do list : matrixctrl, Tabs, function, …)

> – respect of the “ignore click” attribute : very useful when you use transparent multisliders, to edit only the one in front.

ho yes, good idea :-)

> – multisliders style : “% Ghost Bar on Thin line” or “plain-bar” would nice, as the “thin-line” is hard to see under my finger on the ithing…

yep, still lot of work on this one as well !

cheers

Mathieu

#186595
Aug 27, 2010 at 11:10am

Good news!!!!!!

Just an idea : When overlapping 10 pictsliders, it would be funny if the different pictsliders would react only to the nearest finger!! (simple pythagore formula for distance = sqr(x^2+y^2) )

Note: Above, i wrote: “But changing ipad orientation does not change orientation of the objects”… In fact, it shouldn’t, because this would be annoying, an orientation toggle in your patch would be perfect.

#186596
Aug 27, 2010 at 4:22pm

This is looking excellent, thank you. Time to sell my lemur so I can afford an iPad…

#186597
Sep 3, 2010 at 9:14am

Also maybe: Finger sized circle knobs for pictsliders, like on the lemur?…

#186598
Sep 3, 2010 at 10:45am

Brilliant thanks, colour swatch UI would be nice, it comes up but without the coloured background.

#186599
Sep 6, 2010 at 2:03pm

Could also be nice in futures versions: [preset]

#186600
Sep 7, 2010 at 3:50pm

Just amazing ! Thanks a lot

Mayou

#186601
Sep 15, 2010 at 2:44pm

Newbie question: all examples are working, but when I try to create own stuff with MMF I need the “mmf.FS.interface ” object which is unknown in MAX.
I am using V 5.1.5.
Any hints for me?

#186602
Sep 15, 2010 at 4:41pm

Hi,
Remember this : ‘Externals’ objects (that are not in the commercial distribution), are only found by max in two situations:
- if they are in the same folder than the object that you are loading. For example, when you open “MMF-Fantastick_iPad_template.maxpat”, max will find ‘mmf-fs.interface’ because it’s in the same folder (‘MMF-Fantastick’)
- if they are in your “max search path” and that you restarted max. ( look in the help section for “max search path” )

So in ‘File Preferences…”, you can either create a ‘userpath’ with the ‘MMF-Fantastick’ folder, or a ‘userpath’ with a folder called ‘my-max-externals’ where you will put this ‘MMF-Fantastick’ folder.

#186603
Sep 16, 2010 at 11:37am

Alexandre, thank you very much. That was the initial trigger for me.

#186604
Sep 21, 2010 at 4:17pm

I have Fantastick working with Max, and I am very interested in this framework, but Google gives me an error when I try to access the page: http://code.google.com/p/mmf/downloads/list. What’s happening?

#186605
Sep 21, 2010 at 7:57pm

mh… strange.. http://code.google.com/p/mmf/downloads/list works fine here…

here is another link to the same file :

http://dl.dropbox.com/u/174493/MMF-Fantastick_1.01.zip

Mathieu

#186606
Sep 21, 2010 at 8:17pm

Hi Mathieu

Thank you, that worked fine. Can’t wait to dig into it.

John R

#186607
Sep 24, 2010 at 6:01pm

Hi, I have added fpic support in the Max Multitouch Framework.

You need:

  • named fpic objects in the interface patches, with pictures loaded from disk;
    (restrictions Fantastick imposes on your pictures apply here as well: they need to have dimensions that are a power of 2, so 16,32,64,128 px etc)
  • a webserver running on your computer, with the images you have used in the fpic objects placed in the web directory;
    (note that the images you put in fpic don’t actually need to come directly from the webserver folder, it’s just that images with the same filename need to be present in the web folder).
  • a [textedit] object in your main patch (on the same level as the mmf core object) named mmf_imgpath. Enter the web path to your image folder there, including trailing slash. Examples of paths: http://192.168.1.10/images/ , or http://your-bonjour-name.local/images/
  • the modified javascript file attached to this post.

,
(I haven’t tested this with windows yet, on mac it works perfectly, very fast too)

#186608
Sep 26, 2010 at 9:19am

Thanks EMV for this brilliant contribution :-)

with your permission, I’ll add it in the next MMF-Fantastick version.

best

Mathieu

#186609
Sep 28, 2010 at 9:06am

Yes, of course add it in the next version!

#186610
Oct 1, 2010 at 6:05am

hey has anybody got any kind of image to display on the iphone using MMF-fantastick? i’m really mystified by the need for images with measurements of a power of two. it makes creating backgrounds for sliders difficult on the iphone which is 240pix X 480px. the closest measurement in landscape mode would either exceed the screen size or be just over half of the width.

i want to display a waveform below an rslider object but it looks to be really difficult. i got a patcher from the pinktwins website which draws an opengl waveform from a jit.buffer but i can’t figure how to integrate it with MMF-fantastick. ideally i suppose i’d use two layers – one for the waveform render in OpenGL and the other MMF-fantastick layer on top.

any help appreciated – hope i’m not hijacking the thread…

scott

#186611
Oct 1, 2010 at 9:07am

Images can be done using the method I described above, or directly with the OpenGL implementation of Fantastick.
The power of two stuff works like this:
Both of the dimensions have to be 2^something, but they don’t have to be equal and they can extend beyond the borders of the screen. So 32×16, 128×128, 512×16 etc are all valid.
At some point I’ll add the possibility to define the depth (z-coordinate) of images by putting a number into the ‘annotation’ field of the fpic object, but right now every picture is at the same depth as normal objects (z=0), and panels are at z=-1.

#186612
Jan 5, 2011 at 9:31am

I’ve just updated MMF-Fantastick -> version 1.1

- waveform~, Tab & Nodes support added
- “touch area” Fantastick messages support (.. now your iDevice is ‘pressure’ sensitive !)
- fpic support (webserver must be configured on local host)
- scrolling interface option added
- new and simplified abstractions & folders structure
(now everything is in mmf-fs.core – including the network connection patch)
- preferences (IP ports, UI preferences, ..) are stored in a mmf-fs.preferences.txt file
- new example & template interfaces patches.
- interface orientation option added

(requires Max 5.1.7 + Fantastick 2.3)

download latest version : http://code.google.com/p/mmf/downloads/list

enjoy !

Mathieu

#186613
Jan 5, 2011 at 6:04pm

Wow! Great stuff, Mathieu!

#186614
Jan 6, 2011 at 5:39pm

[broken record]

Please add to our new Toolbox to reach the most Max users!

http://cycling74.com/?post_type=toolbox

Thanks,
Lilli

#186615
Jan 7, 2011 at 9:25pm

pressure’ sensitive ?!?!! wwow…
I can’t check this now (i’m in Berlin for tango holidays), but will soon! Thanks Mathieu!

#186616
Jan 9, 2011 at 6:57pm

This is so awesome looking it is really tempting me to get an iPad…

#186617
Apr 6, 2011 at 4:53am

Hello,
I just bought an ipad, mostly for the incredible power your software gives it.
Thank you so much for sharing this wonderful innovation.

However, I’ve run into a problem.

When I run this patch, only one of the node centers gets updated on the ipad. The other circle just stays where it is, no matter how I slide my finger. The corresponding node on the screen get updated just fine when I slide my finger on the ipad node, but the ipad doesn’t update.

Am I doing something wrong? Is this a bug, or the way it’s supposed to work?
Thanks for all your help!
Ben

Here’s the patch:

– Pasted Max Patch, click to expand. –
#186618
Apr 6, 2011 at 7:42am

Hello Ben,

damned, you’re right, 2 Nodes in the same MMF-interface patch just do not work actually…
I’ll fix it asap !

I’ll probably need to add an abstraction for the Nodes objects, because it doesn’t exposes its Nodes positions to the main pattrstorage, so the way it works actually is a bit messy, and won’t be adaptable to multiple objects in one interface.

thanks for reporting it !

Mathieu

#186619
Apr 7, 2011 at 10:59pm

Hi Mathieu,
Thanks for responding so quickly! I can’t wait for the update.
Ben

#186620
Apr 8, 2011 at 11:27pm

Well, I’ve really done it this time. . .
Now I can’t get any connection at all. I’ve followed the connection instructions (typing in the numbers from the ‘What is my IP address’ subpatcher into the Fantastick settings on my ipad), both with an ad-hoc connection and using my household wifi.
None of the example patches will show up on the ipad when I send them a bang. Instead, I get ‘UdpSender: IOException: java.io.IOException: Host is down’ about 30 time in the Max window.

I got the example patches to work when I first got the ipad, but no longer. Does any network wizard have any suggestions? I’m at a total loss.
Thanks!
Ben

#186621
Jan 30, 2012 at 11:14am

Hi! I’ve got a little problem.. well.. at my school there is no wifi connection and for some reason i also can’t create an ad-hoc network.. Is there any other way to connect fantastick on my ipad to MAX?

#186622
Jan 30, 2012 at 3:59pm

Just buy a wif router/hotspot. Can’t imagine they’re that expensive…

#186623
Mar 9, 2012 at 7:10pm

Hi,

Really liking Fantastick to use an iPad as a control interface. I’m using it as the basis of my final year project, and its got some really powerful capabilities.

I’m having some trouble with the nodes object though – The edges of nodes can spill over the edges of the nodes object on the iPad display (rather than being clipped at the boundaries as in Max), which gets really messy with larger node sizes.

I can’t get candy caning or the nodes’ indices to display on the iPad either, does anyone know if those functions are supported?

Thanks,

Ash

#186624
Jul 4, 2013 at 10:54am

Hi guys,
is there anyway this can work with an android tablet?

#254974

You must be logged in to reply to this topic.