"SS5Player for AS3" は、Flash で OPTPiX SpriteStudio のアニメーションデータを表示するライブラリです。
現在、 Starling Framework に対応しています。
- 最新の Adobe AIR または Adobe Flash Player
- 最新の Starling Framework
- OPTPiX SpriteStudio バージョン 5
下記URLより動作サンプルを確認することができます。
http://promotal.jp/ss5player/SS5Viewer/SS5Viewer.html
※当サンプルに含まれるアニメーションデータは、株式会社ウェブテクノロジの著作物です。
Starling を使ってアニメーションを表示するサンプルプログラムの一部です。
public class SS5Viewer extends Sprite {
private var loader:SS5ProjectLoader;
public function SS5Viewer() {
const SSPJ:String = "path/to/your/SpriteStudioProject.sspj";
this.loader = new SS5ProjectLoader();
this.loader.load(new URLRequest(SSPJ), this.onProgress);
}
private function onProgress(progress:Number):void {
if (progress == 1) {
// progress は読み込み完了時に 1 になる
var player:SS5StarlingPlayer = new SS5StarlingPlayer(this.loader.project);
player.startAnime("nameOfYourAnime");
this.addChild(player);
}
}
}
"SS5Player for AS3"は、SpriteStudio プロジェクトファイル(.sspj
)を直接読み込みます。
SpriteStudio プロジェクトファイルを読み込むには、 SS5ProjectLoader
を使用します。
SS5ProjectLoader.load()
は二つの引数を取ります: URLRequest
と Function
です。
最初の引数で読み込む対象の SpriteStudio プロジェクトファイルを指定します。
二つ目の引数はコールバック関数で、読み込みが進行および完了したときに呼び出されます。
(Starlingの AssetManager.loadQueue()
と同じような使い方です。)
※注意: アニメーション (.ssae
) 、セルマップ (.ssce
) 、
画像ファイルなどはプロジェクトから参照できる場所に配置して下さい。
読み込みが完了したら、 SS5ProjectLoader.project
を用いて読み込まれた SpriteStudio プロジェクトを取得することができます。
var loader:SS5ProjectLoader;
const SSPJ:String = "path/to/your/SpriteStudioProject.sspj";
this.loader = new SS5ProjectLoader();
this.loader.load(new URLRequest(SSPJ), this.onProgress);
private function onProgress(progress:Number):void {
if (progress == 1) {
// progress is 1 when loading is complete
}
}
SS5StarlingPlayer
は Starling を用いて SpriteStudio アニメーションデータを表示します。
var player:SS5StarlingPlayer = new SS5StarlingPlayer(this.loader.project);
this.addChild(player);
setAnime()
を呼ぶとプロジェクトからアニメーションを読み込みます。
player.setAnime("nameOfYourAnime");
アニメーションを読み込んだ状態で、play()
と stop()
はそれぞれアニメーションを再生および停止します。
player.play();
player.stop();
startAnime()
は setAnime()
と play()
の両方を行います。
player.startAnime("nameOfYourAnime");
loop
を true
にするとアニメーションがループします。
player.loop = true;
withFlatten
を true
にすると、表示が更新されるたびにStarlingの Sprite.flatten()
を呼び出します。
適切に作られたアニメーションデータの再生速度が向上するかもしれません。
player.withFlatten = true;
パーツに対しての当たり判定を取るには、partNameAt()
と partPlayerAt()
を使用します。
var name:String = player.partNameAt(x, y, forTouch);
var partPlayer:SS5StarlingPartPlayer = player.partPlayerAt(x, y, forTouch);
現在サポートしているアトリビュートの一覧:
"CELL"
"HIDE"
"POSX"
"POSY"
"ROTZ"
"SCLX"
"SCLY"
"ALPH"
現在、補完タイプは "linear"
のみ対応しています。
http://promotal.jp/ss5player/doc/index.html
Copyright (c) 2013, PROMOTAL Inc. All rights reserved. Simplified BSD License.
LICENSE.md ファイルをあわせて参照してください。
本ソフトウェアの最新版は、 Github より入手できます。
- OPTPiX、SpriteStudio、Web Technologyは、 株式会社ウェブテクノロジの登録商標です。
- Adobe、Adobe AIR、Flash、Adobe Flash Playerは、 Adobe Systems Incorporated(アドビシステムズ社)の商標または登録商標です。
- その他の商品名は各社の登録商標または商標です。