2012年6月18日月曜日

ここまでのStarlingと

去年、とあるFlashのワークショップが数週間に渡って開催され、僕はお手伝いする形でそれに関わっていました。Adobe MAX 2011が開催されたのがちょうどその期間中で、ネットを通して仕入れた最新情報をそのワークショップでシェアする機会がありました。

僕にとってもっともインパクトがあったのはStage3Dのパフォーマンスの高さと可能性です。だから興奮気味にその辺りの情報やサンプルを紹介した記憶があります。

Starlingを知ったのもこのタイミングです。例えばAdobe MAX 2011のこのセッション「Developing 2D Games on Top of Stage 3D (Molehill) in Flash Player」。動画の11分過ぎからStarlingの話になります。以下は動画中で紹介されてるStarlingを使ったゲームへのリンクです。

その後でStarlingのサンプルをモバイルAIRアプリ化してiPhoneに入れて試してましたが、ダメでした。後からわかったことですが、当時のStage3Dはモバイル未対応だったんです。

Stage3Dがモバイルに対応したのは2012年3月にリリースされたAIR 3.2からです。Starlingを使ったアプリがやっとiPhoneでも動かせるようになったわけです。

その頃、以前2冊のFlash本に関わらせてもらった経緯もあって、新しい本向けにStarlingのサンプルアプリ制作と記事執筆のお話を頂いてました。



それで3月中旬からcocos2Dで作られたiPhone用2DゲームをStarlingに移植する作業が始まりました。すでにリリースされてたStarling 1.0を使って、(内部的な階層構造やロジックも)できるだけcocos2D版と忠実になるようにしました。Starlingは使い慣れたActionScriptのフレームワークなので、理解もコードを書くのも楽でしたが、Objective-Cは馴染みがなかったのでcocos2D版のコードを読み解くのが一苦労でした。

一応完成したが4月頭。その時点ではcocos2D版のフレームレートは60fpsに対して、Starling版は30fpsがやっとという感じでした。差を縮めたかったので、色々とパフォーマンスチューニングを始めたわけです。それで手を尽くして37fpsぐらいに改善したんですが、60fpsには程遠い状態でした。ちなみにフレームレートはiPhone 4で確認したものです。

ところが、5月にStarling 1.1がリリースされて状況が変わりました。試してみるとほぼ60fpsでるようになったんです!

そして、6月。先日のAIR 3.3のリリース。実はAIR SDK 3.2のエミュレーターにはバグがあって、Stage3Dを使ったモバイルアプリ開発をするとき不便でしたが、3.3で解消され、いい頃合いになったんじゃないでしょうか。Starlingでモバイルアプリ開発を始めるには。

0 件のコメント:

コメントを投稿

コメントありがとう