AIR周りの技術情報

保存しておいた方が良さそうだったのでとりあえずまとめ
1
trick7 @trick7

AdobeAIRでスマホカードゲームを開発することへの感触をメモ。僕はトレンド追えていないのであくまで感触。間違えてたら教えてほしいぐらい。#AIR_cardgame

2013-02-14 14:51:34
trick7 @trick7

1:StarlingがAIRで動くようになった2012年7月の前後で世界が変わっているので7月以前のAIR使えない論は無視してOK?#AIR_cardgame

2013-02-14 14:51:50
trick7 @trick7

2:2Dゲームの場合、スプライトシートの活用が大事なのでStarlingを使えばパフォーマンスは問題なさそう。興味あるのはベジェのままでいいのか、ベジェ部分もスプライトシート化しちゃって、例えばUIパネル素材を1枚テクスチャにしちゃうか、どっちが推奨?#AIR_cardgame

2013-02-14 14:55:11
trick7 @trick7

3:他の開発ツールでも問題になるRetina/非Retinaのテクスチャ問題。Retina用の解像度で素材を作ると、非Retina端末でその素材は無駄に高解像度なのでテクスチャメモリを圧迫する。#AIR_cardgame

2013-02-14 14:59:09
trick7 @trick7

続き:もちろん端末解像度によるテクスチャの切り替えもできるけど、それだと高&低解像度のテクスチャを同梱することになるので、Retina端末だとファイルサイズが無駄に大きくなって悲しい。AIRはどうする?http://t.co/LB3hyzyy #AIR_cardgame

2013-02-14 15:00:05
trick7 @trick7

5:2DカードゲームならAIRはとてもありだと思う。Unityで2DUIを開発するのとFlashで開発するのだったら、Flashの方が速くできる感触。(UnityのNGUIちょっとだけ触った程度の僕なんでUnity→Flashの人は違うかもだけど)#AIR_cardgame

2013-02-14 15:03:24
trick7 @trick7

CoronaSDKではコーディングベースの実装はFlashと同じスピード感で作れるけど、ちょっとしたとこでのFlashのタイムラインの使い勝手はやはり素晴らしいと思う。#AIR_cardgame

2013-02-14 15:04:03
trick7 @trick7

ようはStarling&Stage3Dに対応した後のAIR製カードゲームが出てないから、実情よく分かってない気運?greeのMONPLASMASHぐらい?あれ見るとAIRでバッチリだと思うけど。#AIR_cardgame

2013-02-14 15:06:02
池田 泰延 @clockmaker

Stage3DがモバイルAIRで使えるようになったのはAdobe AIR 3.2(2012年3月リリース)から。モバイルAIRはキャプティブランタイム一択だと考えているので、基本的にどの端末でもFlashの最新機能を使える(HWの制約以外は)。 #AIR_cardgame

2013-02-14 15:14:49
池田 泰延 @clockmaker

UIパネル素材は最終的にはテクスチャアトラス(一枚テクスチャ)にしてしまうほうが、GPU的にメモリの節約 & GPU転送速度を早める(初期化を早くする)ことができます。さらにATF形式(Stage3Dに最適化された画像)するとなお良し #AIR_cardgame

2013-02-14 15:19:59
池田 泰延 @clockmaker

とはいえ、ベジェ(Flash Proで作成したグラフィック等)はテクスチャアトラスにするとワークフローが煩雑で非効率。実行時にActionScriptでBitmapData化してテクスチャに変換する仕組みを独自に作るのが妥当か(ここは検証したい課題) #AIR_cardgame

2013-02-14 15:21:54
trick7 @trick7

@clockmaker ありがとうございます。仰っているキャプティブランタイム一択というのは、WebViewベースの「側(がわ)ネイティブ」に対しての「純ネイティブ」ということでしょうか?#AIR_cardgame

2013-02-14 15:23:41
trick7 @trick7

@clockmaker http://t.co/6CLYMYLB を読んで、こと2D開発においてstarlingが使えるようになったことの重要さを思い知りましたので7月と書いてみました。2DゲームはCPU負荷よりもテクスチャ関連のGPU負荷かなと。#AIR_cardgame

2013-02-14 15:26:07
池田 泰延 @clockmaker

@trick7 キャプティブランタイム一択に関して。AIRランタイムをアプリ内に同梱するかしないか(同梱しない場合はユーザーが自分でストアからAIRランタイムを入れる必要があるので)で、エンドユーザーの手間を減らすための意図ですー #AIR_cardgame

2013-02-14 15:30:43
trick7 @trick7

@clockmaker やはりここは面倒なのですね。さらにRetina/非Retina対応もよくわかりませんがこれはCoronaSDKでも同じ問題で、理想はiPhone4以下は切り捨てる、、捨てたい、、。 #AIR_cardgame

2013-02-14 15:30:58
池田 泰延 @clockmaker

@trick7 確かにテクスチャ関連の負荷(特に容量・メモリ)がアプリ開発時に課題になると思いますー。 #AIR_cardgame

2013-02-14 15:33:45
trick7 @trick7

タグつけて再掲:AIR3.5以降のATFがないとメモリと初期化の問題で厳しいと教えてもらった。http://t.co/8NyiAgQY #AIR_cardgame

2013-02-14 15:36:35
trick7 @trick7

@nezilab とても参考になりました!ATF大事ですね。他の開発ツールではPNGのままでビルドしたりしますが、AIRのPNGテクスチャと同じ時間がかかるのか、AIRランタイムを介さないぶん遅くない(orATF並の速度)なのかが導入の判断基準かも。#AIR_cardgame

2013-02-14 16:42:48
nezilab🍺🍶🍖🍣 @nezilab

@trick7 ほかの開発環境もGPUを使う物はテクスチャ圧縮は使うみたいですね。ATFも名プラットフォームのテクスチャ圧縮をまとめてる物です。 どの環境でもテクスチャ圧縮は大事っぽいですね。 http://t.co/ALWNBrTB #AIR_cardgame

2013-02-14 17:01:22
池田 泰延 @clockmaker

@ume_y 確かにFlash Proだともとがベクターなので端末サイズに合わせてのテクスチャ書き出しが楽そうです。ただスプライトシート万能と思いつつ容量の肥大化が課題になるかと思いまして。 #AIR_cardgame

2013-02-14 17:28:43
池田 泰延 @clockmaker

昨日もツイートしたのですが、Adobe AIR開発のツール群が非常に強力。Flash Builderを使えば接続しているAndroid/iOS端末に同時にアプリをインストール&起動できますし、Adobe Scoutという高性能なプロファイラもある。 #AIR_cardgame

2013-02-14 17:42:55
ゆにたろう @javajiro

AIRforiOSですが、リリースビルドや実機に転送してデバッグを行うのに1回につき3分程度かかります。この辺りの新しい情報や改善方法をお持ちの方がいたら教えて頂きたいと思います。#AIR_cardgame

2013-02-14 18:13:03
ゆにたろう @javajiro

他にも様々な壁はあると思いますが、ビルドに時間がかかる問題が改善するまではAndroidをターゲットにしています。Android実機デバッグは5秒程度で実行できている状況です。#AIR_cardgame

2013-02-14 18:17:19
nezilab🍺🍶🍖🍣 @nezilab

Air for iOSの実機転送は時間かかるのでだいたいiOSシュミュレーターでチェックしていますね。みんなもそんな感じですよね? http://t.co/3sjAEt4p #AIR_cardgame

2013-02-14 18:23:38
池田 泰延 @clockmaker

AIR for iOSの最速の転送方法は、Flash Builder 4.7で高速(インタプリターモード)コンパイルし、USB(iTunes経由が不要)で転送かと。 http://t.co/9UGt1kqJ http://t.co/lrqQIOG4 #AIR_cardgame

2013-02-14 18:40:26