Archive for the ‘Development’ Category

Flash, Actionscript 1 & 2 based, on the iPhone, now

Wednesday, January 27th, 2010

Thanks to Rob i heard of igameswf the other day.

I had known gameswf for quite a while and tried it before, but yeah, it was quite surprising to see their repository now has a igameswf version up there.

A bunch of things don´t work as they should yet, some things don´t perform as one would like but then it also has some features the Adobe solution won´t have.

I´m getting ahead of myself though, let´s go through it one by one:

Its an xcode project which when compiled and installed nicely runs an app with an swf on the iPhone.

That app itself allows to load and run other swfs from the web.

The default swf in the igameswf is basically an input textfield with a flash made keyboard below it so that one can enter an url to load another swf.

One can replace that swf with a different swf which then performs a bit better than when loaded in at runtime into the container.

The default swf in there is a good indicator for strengths and weaknesses though:

The keyboard already wasn´t very responsive on my iphone 3g (noticable delay between pressing a key and it responding) but i´m sure it would be better on 3gs, maybe even smoothly usable there without any delay, dunno.

Overall the performance was nowhere near to something one for example could have made in unity iPhone or Objective C, but it felt pretty comparable to the flash made apps using the Adobe Packager solution i downloaded from the App Store up to now.

Trying out a few more swfs i noticed that quite a bunch of API side things are not fully implemented yet so if one would want to deploy a full game using this solution one would very likely have to focus on simpler things or test and tweak it a good bit to work around current limitations.

I imagine a similar thing should be the case with the Adobe solution though.

Overall its impressive that

1)  with the gameswf solution one has support for more Actionscript versions/ target Player version made for flash content, even if not the full flash API is integrated; the Adobe solution only supports AS3 content made with flash CS5 and upwards, deployed directly as ipa app

2) one can load in other swfs at runtime with code execution for them

3) one can in theory use more of the iPhone sdk and that way iPhone features than with the Adobe solution as it is based on an XCode project deploy manner

Still of course this is in early state, right now it would probably be most useful for creating nice flashy menus, but yeah, nice to have options and definately something interesting, i think Adobe would do great in taking note there on a few ends.

Flash on the iPhone: chances, risks, options & alternatives

Tuesday, January 26th, 2010

How we got to where we are:

There´s a long story regarding Flash on the iphone, or more: that it isn´t there yet:

Adobe had announced a long while ago that they were working on a flash player for iPhone.

Apple blocking the flash player:

Then, after some forth and back, and some silence, News made the round that Apple does not support having flash run in the browser of the iPhone, the reasoning given was that the performance wouldn´t be good enough.

(

Tangent:

My view on flash content running in the browser of mobile devices right now:

I use all sorts of technologies and languages to create my games and apps and next to others i used flash since its first few releases as flash, but yeah, even i have to agree there, flash running in the browser of a mobile device of today just is no good idea.

When some people ask for flash running in the browser of a mobile device its usually thanks to an illusionary expectation that it might perform well while at the same time not affecting the performance of the browser or the whole device.

That just isn´t possible right now because flash mostly runs using the cpu, also for most graphic related things, Adobe just has neglected making propper use of the gpu for all graphics related operations for many years.

That means flash content performs badly and has very high system requirements regarding cpu speed when running comparably simple content that would run much better when done in other technologies.

I´d welcome a browser plugin for mobile devices if and only if Adobe makes propper full on use of the gpu for all graphical operations and that´s not gona happen anytim soon, they are just at the step that with the latest player video playback gets accelerated in some cases

)

So what did Adobe do then?

Adobe working on solution to bring flash to the iPhone as native app:

On their last Adobe products centric conference they announced that the upcoming Flash CS5 ide would allow flash developers to deploy Actionscript 3 driven Flash apps to the iPhone, as native iPhone application.

That way  no plugin or standalone player is needed and Flash developers could publish their apps on the app store.

in fact at the same conference Adobe showed a few apps already on the App Store that used an early alpha version of that technology in their creation.

This lead to quite mixed reactions:

On one side it created a big media buzz, on the other side the released apps couldn´t convince many:

They were mostly very basic apps that despite their simple content with not much going on were quite big in filesize and ran at quite stuttering framerate, especially on devices older than the iPhone 3G S.

Progress, the state and where to go from here:

In the coming weeks and months some hyped it up, others, including me, talked in very worried way about the possibly limited functionality and in comparison probably bad performance of the flash made iPhone apps.

Adobe staff members were then always quick to argue that

a) their technology is still in early in development version and would be improved considerably before launch

and

b) one shouldn´t expect performance like on a desktop machine on a mobile device and also that apps not made as native app using objective C would not lead to the same performance.

While i give them a), they will have real trouble with that b) type arguing and attempt to “educate” developers like that to lower their expectations and live with it as if it was no flash/ Adobe specific limitation:

Other technologies like unity3d have prooven time and time again what all can be achieved with third party middleware on an iPhone or iPod touch, with many action intense 2D and 3d games and other apps rushing the app store charts for months and running great even on the oldest devices.

Well, Adobe still has time to deliver, i think they did good in cancelling their public beta cycle to focus on the development to improve it as much as they can before release, even if their given reasoning for that was highly questionable.

Again, i´m not one of the guys with a “flash is all bad” view; i like using every technology for what its good for, but yeah, Adobe has to deliver and they have to surprise everyone who has lost belief in them after several disappointing releases.

Flash is in theory an ideal technology for creation of 2d animation and generally media heavy centric content and it would be great if Adobe could actually make it a good choice regarding it leading to comparably well performing content that can also use the features of the platforms it runs on well.

Sadly it doesn´t look like that right now what with the apps released so far which either perform bad or are very simplicistic; and the workflow required to create the content doesn´t seem ideal at all either, what with the restriction to only support Actionscript 3 content and then also not deploying an xcode project but rather a finished app that is hard to test and impossible to extend further.

(Basically flash developers going for the Adobe solution are restricted to only using those features of the iphone sdk to which Adobe has implemented access via their Actionscript api as one can´t use any of the other features on xcode side as is known by now judging from what Adobe has released as public info so far)

I think for all developers interested in iphone and multi platform content creation in general it would be a good idea to check out the alternatives, and don´t believe too much in any hype no matter if positive or negative, before being able to try the technology or several of the resulting apps first hand.

I´ll write on some of the other options for creating 2D and 3d games and other apps for the iPhone and other platforms as i get to it since with the Adobe solution its a wait and see right now. And well, if and when the Adobe solution is available i´ll write some more on that in between, too =)

Public Preview: GO!

Friday, January 15th, 2010

Wow, Apple is on fire! =)

I just submitted the update to Stuntmanbob the other day and it has already been approved and is live on the App Store, wicked =)

This update is special because i´m trying something new there: It features a preview version of the Cannonball physics editor which is still work in progress. Hence that message shown below which one sees when one uses it =)  I thought it´d be cool to get feedback from the players on a feature while i can actually still change it considerably. Let´s see how that goes =)

stuntmanbob iPhone Cannonball physics editor Feedback Panel

Here is the App Store link:

Stuntmanbob on the App Store

Yep, starting a development blog, too

Thursday, January 14th, 2010

Its been a while since i last posted on a blog. I´ve been thinking about setting up a blog again but never got to do it, always so many things to do..

Well, good thing my mate dock started a blog a few days ago, motivated me to finally do it again, too.

That, and also that i wanted to write about some things i´m working on =)

In the last few days i worked on a level editor update for stuntmanbob on the iPhone. Basically one can place and connect parts with joints, build levels or just goof around

stuntmanbob iPhone Cannonball physics editor

stuntmanbob iPhone Cannonball physics editor

For some reason it turned out more tricky to do than i expected (haha, yeah, this is an injoke to fellow developers cause that just happens all the time in development, no? :) ) to connect the wheels using my custom collider setup and still have them be able to spin freely, so once i got that working i was so happy that i made a second screen capture right away :)

I´m intending to release the update to stuntmanbob featuring a preview version of the editor on the app store shortly so more on this soon =)