package { import away3d.containers.View3D; import away3d.core.utils.Cast; import away3d.materials.BitmapFileMaterial; import away3d.materials.BitmapMaterial; import away3d.materials.Material; import away3d.primitives.Cube; import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.Sprite; import flash.events.Event; import flash.geom.Matrix; import flash.geom.Rectangle; /** * @project CubeTetris * @author sban * @date 2010-8-6 */ public class CubeE extends Sprite { public function CubeE() { super(); v = new View3D({x:200, y:200, color:0xffff0000}); cube = new Cube({width:150, height:150, depth:150}); cube.rotationX=15; cube.rotationY=15; //cube.material = new BitmapMaterial( (new myTexture as Bitmap).bitmapData, {showNormals:true} ); //cube.material = new BitmapFileMaterial("meta2.jpg"); var b :Bitmap = new myTexture as Bitmap; var bd :BitmapData = new BitmapData(50,50); bd.draw(b, null, null,null,new Rectangle(0,0,50,50)); cube.material = new BitmapMaterial( bd ); v.scene.addChild(cube); addChild(v); v.render(); this.addEventListener(Event.ENTER_FRAME, renderThis); } private var v:View3D; private var cube:Cube; [Embed (source="meta2.jpg")] private var myTexture:Class; private function renderThis(e:Event):void { cube.rotationX +=1; cube.rotationY +=1; cube.rotationZ +=1; v.render(); } } }