Adobe Flash非公式テクニカルノート Starlingフレームワーク1.5リリース候補
Starlingの開発版には、多くの最適化やバグ修正、および新たな機能が加えられました。そこで、現行バージョンが1.5リリース候補となりました。みなさんが開発されたゲームコンテンツでお試しください。今のところ、大きな障害は見つかっていません。とくに問題がないようでしたら、バージョン1.5の正規版として近く公開されます。Starling Forumの記事「Starling 1.5 Release Candidate」より、おもな変更点をご紹介します。 01 プロファイルの自動選択Adobeは先にStage3Dの新たなプロファイルとしてContext3DProfile.BASELINE_EXTENDEDを加えました。これにより、4096×4096ピクセルのテクスチャが使えます。今や標準となった大きなテーブルの解像度が扱えるのです。 しかし、デバイスごとに正しいプロファイルを選ばなければなりません。そこで、ゲームの動いているハードウェアに合わせて、Starlingが自動的にプロファイルを選べるようにしました。 サポートするプロファイルは、つぎのようにStarling()コンストラクタの第6引数として、複数を配列に入れて渡せます。
さらに、つぎのように定めれば、最適なプロファイルが選ばれます。
Starlingが初期化できたら、使われているプロファイルはStarling.profileプロパティで調べられます。そうすれば、そのプロファイルにゲームの処理が合わせられるのです。たとえば、プロファイルが最高なら高品質のHDテクスチャもロードできます。 デフォルトは、安全のため"baselineConstrained"としています。また、複数のプロファイルをサポートするには、その分のテストが求められるでしょう。 02 可能な場合にはRectangleTextureオブジェクトを自動的に用いる内部的な設計上の理由により、デフォルトの2の累乗サイズのStage3Dテクスチャは、実際には使わなくてもミップマップ用のメモリを割当てます。 けれど、"baseline"プロファイルからは、Stage3DがRectangleTextureオブジェクトをサポートします。すると、2の累乗の縦横サイズでなくても済みます。さらによいのは、ミップマップメモリも割当てなくなることです。 そこで、StarlingはできるかぎりRectangleTextureオブジェクトをデフォルトとします。そのためには、つぎのことを行います。
これらにより、Starlingは自動的にRectangleTextureオブジェクトを用い、テクスチャに費やすメモリが33%減らせます。 03 回転したサブテクスチャのサポートを追加TexturePackerのユーザーには、StarlingやSparrowの形式で書出すとき、アトラス内で回転させて、効率的にテクスチャをつくる手があります。Starling 1.5ではこのテクスチャの回転がサポートされます。 これにより、アトラスの数を減らして、さらにメモリを節約することもできるでしょう。 04 touchGroupプロパティの追加DisplayObjectContainerインスタンスは、新たにtouchGroupというプロパティを備えました。これは、長く要望されていたプロパティです。有効に定めると、タッチ操作できるひとつのオブジェクトのように扱えます。FlashのDisplayObject.mouseChildrenプロパティと似た機能です。 05 起動時間が大幅に速まったStarlingは、AGALプログラムを必要に応じて動的につくるようになったため、起動の時間がかからなくなりました。これは大きな効率化です。 06 細かな改善
07 ゲームが動くようにするためにモバイルでは、開発用デバイスでは動くにもかかわらず、ある特定のデバイスファミリーだけで起こることにたびたび悩まされます。Starling 1.5では、それらの多くを解決しています。
作成者: 野中文雄 Copyright © 2001-2014 Fumio Nonaka. All rights reserved. |
|||||||