三次元の勉強中
-- welcome to wonderfl --
wonderflとは、
ブラウザのみでFlashをつくることのできるサービス
サイトにあるフォームにActionscript3のコードを書き、
サーバサイドでコンパイルを行います。
コンパイル結果がページ上に自動的に表示されるので、
完成したFlashをリアルタイムに見ながらコードを書くことができます。
まずは、Fork ボタンをクリックして、このソースを改造してみよう。
// forked from mash's wonderfl KeyVisual V.4.ja
//
// -- welcome to wonderfl --
//
// wonderflとは、
// ブラウザのみでFlashをつくることのできるサービス
//
// サイトにあるフォームにActionscript3のコードを書き、
// サーバサイドでコンパイルを行います。
// コンパイル結果がページ上に自動的に表示されるので、
// 完成したFlashをリアルタイムに見ながらコードを書くことができます。
//
// まずは、Fork ボタンをクリックして、このソースを改造してみよう。
//
package {
import flash.display.Sprite;
import flash.display.Loader;
import flash.display.MovieClip;
import flash.events.IEventDispatcher;
import flash.events.IOErrorEvent;
import flash.events.HTTPStatusEvent;
import flash.events.Event;
import flash.net.URLRequest;
import flash.geom.*;
[SWF(backgroundColor="#FFFFFF", frameRate=10)]
public class FlashTest extends Sprite {
public function FlashTest() {
var loader :Loader = new Loader;
var url :String = "/swf/demo_ja.swf";
loader.load( new URLRequest(url) );
addListeners( loader.contentLoaderInfo );
addChild( loader );
loader.scaleX = 1;
loader.x = -stage.stageWidth ;
loader.y = -stage.stageHeight ;
var enLoader :Loader = new Loader;
var enUrl :String = "/swf/demo_en.swf";
enLoader.load( new URLRequest(enUrl) );
addChild( enLoader );
enLoader.x = stage.stageWidth ;
enLoader.y = -stage.stageHeight ;
z = 1000;
addEventListener(Event.ENTER_FRAME , enterFrameHandler);
}
private function enterFrameHandler(event:Event):void
{
var m:Matrix3D = new Matrix3D();
var hw:Number = stage.stageWidth / 2;
var hh:Number = stage.stageHeight / 2;
m.prependTranslation(hw,hh,0);
m.prependRotation(0.2,Vector3D.Y_AXIS);
m.prependRotation(0.2,Vector3D.X_AXIS);
m.prependRotation(0.2,Vector3D.Z_AXIS);
m.prependTranslation(-hw,-hh,0);
transform.matrix3D.prepend(m);
}
private function addListeners( d :IEventDispatcher ) :void {
// do nothing
d.addEventListener( IOErrorEvent.IO_ERROR, function(e :IOErrorEvent) :void {} );
d.addEventListener( HTTPStatusEvent.HTTP_STATUS, function(e :HTTPStatusEvent) :void {} );
}
}
}