Flash Pro CC, Starlingを使って画像をロードする

Flash Pro CC, Starlingを使って画像をロードする

Flash Pro CC, Starlingを使って画像をロードする : デモ

Flash Pro CC, Starlingを使って画像をロードする : ZIPファイル(69kb)

1.Main.fla

1. Flashコンテンツのパフォーマンスをグラフ化するstatsをダウンロードします。

statsサイト(外部サイト):http://github.com/mrdoob/Hi-ReS-Stats

2. Flash Professional CC にダウンロードしたstatsファイルを以下のように、Flashメニューから設定します。

Flash – 環境設定 – コンパイラー – ソースパス で、Hi-ReS-Stats-master/src を設定します。

3. Starlingファイルをダウンロードします。

Starlingサイト(外部サイト):http://gamua.com/starling/

4. Flash Professional CC にダウンロードしたstarlingファイルを以下のように、Flashメニューから設定します。

Flash – 環境設定 – コンパイラー – ソースパス で、starling/src を設定します。

Flash – 環境設定 – コンパイラー – ライブラリパス で、starling/bin を設定します。

5. プロパティのクラスに「StartUp」を記述します。

2.StartUp.as

プログラム言語は、ActionScript3.0です。

package
{
	import flash.display.Sprite;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
	import starling.core.Starling;
	import net.hires.debug.Stats;
	
	public class StartUp extends Sprite
	{
		private var mStarling:Starling;
		
		public function StartUp()
		{
			//fps計測用クラス
			addChild(new Stats());
			
			stage.align = StageAlign.TOP_LEFT;
			stage.scaleMode = StageScaleMode.NO_SCALE;
			
			//starlingインスタンスの作成
			mStarling = new Starling(ImageLoad, stage); //画像をロードする
			
			//アンチエイリアスの設定 0:アンチなし、2:最小限のアンチエイリアス、4:高品質、6:最高品質
			mStarling.antiAliasing = 2;
			
			//スタート
			mStarling.start();
		}
	}
}

3.ImageLoad.as

package
{
	import flash.display.Bitmap;
	import flash.display.Loader;
	import flash.events.Event;
	import flash.net.URLRequest;
	
	import starling.display.Image;
	import starling.display.Sprite;
	import starling.textures.Texture;
	import starling.utils.deg2rad;
	
	public class ImageLoad extends Sprite
	{
		private var boyVector:Vector.<Image> = new Vector.<Image>(NUM_BOYS, true);
		private const NUM_BOYS:uint = 20;
		//[Embed(source = "sausage.png")]
		//private static const Sausage:Class;
		
		public function ImageLoad()
		{
			//ローダーの作成
			var loader:Loader = new Loader();
			//テクスチャをロード
			loader.load(new URLRequest("boy.png"));
			//テクスチャがロードされたら
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE , onComplete);
		}
		
		private function onComplete(e:Event):void
		{
			var loaderBitmap:Bitmap = e.currentTarget.loader.content as Bitmap;
			//ロードしたビットマップからテクスチャをつくる
			var texture:Texture = Texture.fromBitmap(loaderBitmap);
			for(var i:int = 0; i < NUM_BOYS; i++)
			{
				//テクスチャを使ってImageをつくる
				var image:Image = new Image(texture);
				//ランダムなアルファ、位置、回転
				image.alpha = Math.random();
				//ランダムな初期位置を決める
				image.x = Math.random() * stage.stageWidth;
				image.y = Math.random() * stage.stageHeight;
				image.rotation = deg2rad(Math.random() * 360);
				//表示
				addChild(image);
				//あとで使えるように参照を保持
				boyVector[i] = image;
			}
		}
	}
}

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です