概要
StarlingはFlashからGPUを使うのをサポートするライブラリで、FeathersはそのStarling上で動くライブラリでUIのコンポーネント群です。
もともとFlashはタイムラインを使ってベクターやビットマップ画像をアニメーションさせるツールでした。
その後、スクリプトが強化されるにつれて、ゲームやWebアプリ、家電製品のインターフェイスなどの利用が増え、だんだんと高度な機能が要求され実装されていくようになります。
その一つとして、FlashはGPUをサポートするようになります。それまではCPUから画像の描画を行っていましたが描画専用の演算装置であるGPUを使うことで格段に描画速度が上がりました。
しかし、GPUへのAPIは従来のFlashで使われている描画システムとはかなり異質で、直接叩くには使い勝手が悪いものです。
そこで、ActionScriptから比較的簡単にGPUをあつかえるようにしたのがStarlingです。
また、GPUでは従来用意されていたボタンなどのUIが使えなくなり、それを補う形で出たのがFeathersというライブラリです。
これらを使うとFlashでGPUを使った開発が格段に楽になります。特に演算能力が非力なモバイルアプリ開発である程度複雑な物をAdobe Airで作る場合に必須の知識になっています。
一方、従来のWebコンテンツではよほど速度が必要で無い限り使う意味はありません。また、モバイルデバイスはほぼGPUをサポートしていますが、パソコンはたまにサポートされていない場合もあり、その時は描画は遅くなります。Webコンテンツではゲームの一部、特に描画負荷が高いものでStarlingやFeathersが利用されています。
利点と難点
GPUおよびStarlingやFeathersを使う利点は
- 描画速度が速い
- 特にモバイルで描画負荷が高い場合はほぼ必須
- 描画があまりからまない過去の資産が使える
難点は
- サポートされていないデバイスもある
- タイムラインが使えない
- 描画が関係する過去の資産は使えない
- PCだと負荷が高いとき以外はあまり差が無い
また、他のゲームエンジンとの比較ですと、PCのブラウザゲームだと普及度などの観点からFlashが他の選択肢を突き放していますが(最近差が縮まったとは言え、海外ブラウザゲームサイトをみるとFlashとUnityでゲームの数もアクセス数もケタが違う)、モバイルだとcocos2d-xやUnityという選択肢もあるので、これからモバイル向けゲームを作る人などはそちらを利用した方が良いです。(ブラウザゲームというとhtml5が話題となったこともありますが、個人でゲームを作るには今のところ音関係やソース暗号化や容量やブラウザの差や素材のライセンスや宣伝方法やマネタイズ方法などに問題がありすぎて話になりません。会社でソーシャルゲームとか作るんだったら良いかもしれませんが)
過去の資産を使いたい人や、モバイルとPCブラウザ両方でゲームなどを出したい人、リッチなブラウザゲームを作りたい人はStarlingとFeathersを覚えておくと良いと思います。
Introducing Starling
Kindleで無料で読めるStarlingの入門書。英語だが難しい言い回しなどは無く、サンプルを適当に見ても、多分なんとなく意味は分かる。過去にAdobeなどで掲載された記事の使い回しだが、まとまっているので探し回らなくて良くて便利。ただし、Feathersや応用的だがよく使う機能(たとえばAssetManagerなど)が抜けており、実際の開発にはこれだけではきつい。
Starlingのサイト
Starling配布元サイト。各種資料がまとまっている。でもチュートリアルなどは今ひとつ。Starlingの機能を検索すると大抵ここのフォーラムがヒットするので情報量は多い。
Feathersのサイト
Feathersのサイト。特にHelpがよくまとまっており、Feathersを使うときはこのHelpを見ながら開発することになる。しかし、基本的な機能だけなので、より詳しくはリファレンスやフォーラムを見ると良い。
akihiro kamijoさんのサイト
Flash関連全般の情報がある。Starlingの情報もある。
F-site
Flash関連情報の有名サイト。Starlingの情報もある。でも「Starling」で検索すると最新記事が2013年だったり。
ぺージ情報 | |
---|---|
ぺージ名 : | StarlingとFeathersの概要 |
ページ別名 : | 未設定 |
ページ作成 : | njf |
閲覧可 | |
グループ : | すべての訪問者 |
ユーザー : | すべての訪問者 |
編集可 | |
グループ : | すべての訪問者 |
ユーザー : | すべての訪問者 |