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