For this one, you are going to need Flash CS3 or CS4 as far as I know. I don't know how FlashDevelop or Flex will translate. We will be using assets from the Library which are linked to AS files. I'm thinking it'd be best to go through the files. Read the rest of this entry »
Fire up the SVN, Touchlib's AS3 TUIO library has been updated! Along with RotatableScalable. These files have been my introduction to developing Flash AS3 apps for multi-touch. This is a great thing, changes that have been mentioned in the NUIGroup Forum Threads have been added in. And even suggestions from this site has been added as well.
returnBlobs(); function was added into TUIO.as ~ a personal favorite of mine ~ read more
RotatableScalable scaling registration point bug fixed ~ read more
and TUIO debug mode ON/OFF bug fixed, all tracking diplays can be turned off without errors
Now that Touchlib is once again updated. I've integrated the new files into my own collection of experiments., and went through each one to make sure no problems arose. Another thing I began checking was using Flash Player's Standalone Debugger version 10. For those who don't have Flash to work with and do not have a stand alone player, that's where you can find one. Read the rest of this entry »
I do like the Flash and Math website. Is it a great place to find some tutorials and examples for actionscript. One in particular I'd like to point out is building a simple 3d cube, without needing APIs like Papervision. But, you will need to be able to compile SWF files with Flash 10 capabilities. Read the rest of this entry »
NOTE: The first video uses an unedited MSAFluid Processing example. But the example was saved intended to be used with the multi-touch iPhone app, where the screen is so small, to use normal velocities could make the display go haywire. The video later uses high velocities to produce expected results.
So the very first time I heard about it, it was called MSAFluid.
This is a library for solving real-time fluid dynamics simulations based on Navier-Stokes equations and Jos Stam's paper on Real-Time Fluid Dynamics for Games.
Which can be found at Memo.tv here, release 3 April 2009. At this point Memo (Mehmet) Aktenwas able to create a Processing app to create something simply amazing! If you have not seen it yet. GO SEE IT! You'll be blown away.
Not even 24 hours of the release of the source, Seth Sandler of NUIGroup was the first to take the single mouse interaction and converted it to a full multitouch app. (If only I wasn't stuck at work at the time, hey myself, no excuses!) And get this, multitouch vs single mouse shows no drastic differences in performance. Eugene's inital development into Flash did a brilliant job managing resources. I'm going to have to learn as much as I can from it.
So that's the story I know. So what hasn't been talked about. Well, when I was playing around with both versions I definetly noticed a performance difference, which some of you may not see depending on the caliber computer you use for your MT devices. Here is the computer I use:
Windows XP Pro desktop
Intel Celeron Processor: 1.6GHz
2.0 GB RAM
NVIDIA GeForce 8800 GT Graphics Card
Projector: Dell 3300MP
Now I'll be the first to admit that this is Not a quick setup. It was actually my backup machine. My normal computer uses an Inter Core2 Quad 2.5GHz with 4.0 GB RAM. One reason is that I need the more powerful desktop for freelance gigs and it is much easier to code on a computer setup on a desk then integrated into a table. The other reason is it offers that little bit of extra challenge to make sure apps I develop work as best they can with minimal system requirements. But any time I feel left out power-wise, I'll swap towers (^_^)//
What are the results already?!
I have to say that on my setup, Flash blew away Processing. Which shocked and amazed me! Now the Flash doesn't make it to the full 30FPS. It only hits 10-15FPS. Processing? Well it worked great with the mouse, but touch integration? Forget about it. But I'm no fluent Processing user, I am capable enough to be able to use examples and libraries. So I could be missing files, I could have something setup wrong. I can only show you what I have running.
But in the end. I'll add a huge check mark for Flash in the world of multi-touch app development.
happy experimenting.
Hold On!
Looks like a spoke too soon. Take a look at this NUIGroup thread. I feared that I didn't have something setup right in Processing. Thanks to some quick guidance from theigor, Process is up and running how it should be. And like everyone theorized, Processing preformed circles around Flash. I wasn't that surprised in the end I suppose, but I know one this for sure; I can intergrate this into other SWF files and study and edit code I am much more familiar with. And Flash has a nice interface to chance the fluid attributes on at runtime.
I would also like to quote Memo from his Vimeo comment from the first video:
"On a note regarding performance comparison, I don't think the flash demo has the same number of fluid cells (was it 40x40?) as the processing demo (was it 120x80?), so to compare the performance of the two demos would be unfair. But I must add that I am very impressed with the flash demo's performance anyway, it flies on my macbook pro and looks great, so great job Eugene!"
So this comparison isn't exactly and apples to apples comparison, maybe not even apples to oranges. I'm gonna call it apples to waffles. But thinking about it more just now, maybe it is apples to oranges. Apples to waffles would be comparing FluidSolver to my app prototype - for 36 views of a bridge video project. But the video has already been rendered and uploaded, so I hope we can all just take it with a grain of salt. Dude I've been using a lot of catch phrases lately. Krikies, I'll try to give it a break.
Here's the long and the short of it. I've been collaborating with Alexander Boxerbaum for an upcoming event in downtown Cleveland Ohio called Ingenuity Fest. Alex's project is called 36 Views of a Bridge, take a look at the previews, I think it looks amazing.
The plan is, the audience should be able to vote on which video(s) they like the most to change the order of the final playlist of all the videos. So the initial options are, vote online, vote with mobile devices and vote at a computer interface at the event. But with the event being focused on ingenuity, there needs to be something a little more than just computer and mouse... but what?... wait for it... Multi-touch Table and multi-touch Flash interface.
So here is the rundown:
One computer runs the multi-touch table and the voting
Each vote is sent to a web server via PHP to a MySQL database
the same PHP script can also collect votes from webpages and mobile devices
A seperate computer reads the votes from the database to reorder the video playlist every time the full playlist has completed
And there is the base functionality, in addition to that. There is a multi-touch magnifying glass feature built into the stage. Touch on the map and get a viewport of 3X magnification of the map. Just a little bit of spice added into the app.
There is still much to do to get the app finalized for the event. So I'll be working hard to get it ready in time to get the proper videos in and any design revisions to the app. I'm also trying to get a new table prototype ready in time.
The is something powerful at your disposal in the touchlib library for AS3. It is called RotatableScalable.as
Now, it is a bit messy. And there is code in there that doesn't really need to be, but it is a Great place to start if all you want is to Drag, Scale and Rotate MovieClips. Unfortunetly, it's not without bugs to work through. Lets do a really quick test in Flash. Read the rest of this entry »
It has been a while. But thanks for returning. I'm all situated with the move and now I'm feeling refreshed and ready to return to a little experimenting. So I thought I'd come back strong with something really visual.
Fractals!
The quickest explination I can think of is. Fractals are create by using recursion to run the same drawing function, but for every iteration length and thickness decreases a little. Right off the bat, I want to confess that recursion has to be my least understood topic when it come to programming. Though the idea doesn't sound too hard, reloop through the same function a certian number of times. Read the rest of this entry »
Thinking about it, I haven't put up any experiments lately. I don't think I've been following a pattern and I don't know if anyone is anticipating anything, but I just want to take this opportunity to mention the reason behind my current lack of posting. I just purchased a new home, and I've been moving everything I have from point A to point B. I didn't plan enough ahead to really pack thoroughly or even make a plan of attack. I haven't even gotten my MT table to the new place yet, it's a proof of concept so it's not really the smallest build out there. So by the end of the day, I'm just out of multi-tasking power.
But that doesn't mean that I haven't done anything multi-touch related. Members of the NUI Group have approached me to add to the book they are putting together to be distributed at IDC 2009. Something I would love to go to, unfortunetly it's just not in the cards right now. What section will I be helping with? Flash Actionscript 3.0 for Multi-touch, who would have guessed huh? (^_^)//
They are doing some final editing so I'm not sure if they'll be pulling out anything I wrote, but a quick synopsis is; A brief history of Flash and Actionscript, the need for FLOSC, Making Your First AS and FLA file, Adding in TUIO communication (including function adding: TUIO.returnBlobs() + TUIO.returnBlobs()[i].getID()), and 2 quick apps.
If you are fortunate enough to make it to IDC 2009, try to find the NUI Group.
What they are putting together is going to be one word: Awesome!
RT @nevenmrgan: Apple's newly published App Store guidelines confirm: "Don't walk close to the edges, even though that's where interesti ... 4 hours ago
Recent Comments