In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

Away3Dでテクスチャ付きのボックスとパネル

【参考サイト】
Away3D Basics 4 - Manipulating 3D objects > Tutorials > Flash Magazine
http://www.flashmagazine.com/Tutorials/detail/away3d_basics_4_-_manipulating_3d_objects/

Away3D v2.1.0の使い方(2)-テクスチャ&マウスイベント
http://www.scratchbrain.net/blog/ver2/entries/000806.html
Get Adobe Flash player
by nakamura001 05 Oct 2011
    Embed
/**
 * Copyright nakamura001 ( http://wonderfl.net/user/nakamura001 )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/uCqV
 */

// forked from nakamura001's Away3Dのサンプルを試してみた
// 【参考サイト】
// Away3D Basics 4 - Manipulating 3D objects > Tutorials > Flash Magazine
// http://www.flashmagazine.com/Tutorials/detail/away3d_basics_4_-_manipulating_3d_objects/
//
// Away3D v2.1.0の使い方(2)-テクスチャ&マウスイベント
// http://www.scratchbrain.net/blog/ver2/entries/000806.html

package {
    import flash.system.*;
    import flash.net.URLRequest;
    import flash.events.*;
    import flash.display.Loader;
    import flash.display.LoaderInfo;
    import flash.system.LoaderContext;
    import flash.display.BitmapData;   
    import flash.display.Bitmap; 
    import away3d.containers.View3D;
    import away3d.primitives.Cube;
    import away3d.primitives.Plane;
    import away3d.materials.BitmapFileMaterial;
    import away3d.primitives.data.CubeMaterialsData;
    import flash.geom.Vector3D;
    import flash.display.Sprite;
    [SWF(width="500", height="400", frameRate="60", backgroundColor="#DDDDDD")]
    public class FlashTest extends Sprite {
        private var loader:Loader = new Loader();
        private var cubeMaterial:CubeMaterialsData;
        private static const textureURL:String = "http://tsuyobi.heteml.jp/flash/data/player.jpg";
        public function FlashTest() {
            // write as3 code here..
            Security.loadPolicyFile("http://tsuyobi.heteml.jp/crossdomain.xml");
            // create a viewport
            var view:View3D = new View3D({x:250,y:200});
            addChild(view);
            // create a sphere and put it on the 3D stage
            var cubeFront:BitmapFileMaterial = new BitmapFileMaterial(textureURL); 
            var cubeBack:BitmapFileMaterial = new BitmapFileMaterial(textureURL);
            var cubeTop:BitmapFileMaterial = new BitmapFileMaterial(textureURL);
            var cubeBottom:BitmapFileMaterial = new BitmapFileMaterial(textureURL);
            var cubeLeft:BitmapFileMaterial = new BitmapFileMaterial(textureURL);  
            var cubeRight:BitmapFileMaterial = new BitmapFileMaterial(textureURL);   

            var tree:Plane = new Plane({width:100, height:100});   
            tree.rotationX = 45;    
            tree.position = new Vector3D(0, -150, 0);
            tree.material = cubeFront;
            view.scene.addChild(tree);
            cubeMaterial = new CubeMaterialsData({front:cubeFront,back:cubeBack,
            top:cubeTop,bottom:cubeBottom,
            left:cubeLeft,right:cubeRight});
            var cube:Cube = new Cube({cubeMaterials:cubeMaterial});
            cube.rotationX += 30;
            cube.rotationY += 45;
            view.scene.addChild(cube);
            addEventListener("enterFrame", function():void {
                cube.yaw(1);
                view.render();
            });
        }
    }
}