package materials { import away3d.materials.ColorMaterial; import away3d.primitives.Cylinder; import flash.display.BitmapData; import triga.render.MaterialHelper; import triga.render.ViewHelper; /** * @author Nicolas Barradeau * http://en.nicoptere.net */ public class B_DefaultTextures extends BaseScene { [Embed(source="../../lib/res/textures/cubemap.png")] private var envMapSrc:Class; private var envMap:BitmapData = new envMapSrc().bitmapData; public function B_DefaultTextures() { lightColors = [ 0xFFFFFF ]; cameraDistance = -1000; lightsDistance = 10000; ViewHelper.grainyBackground( view, 1024 ); addChild( GlobalTextField.instance ); setup(); } override protected function initObjects():void { ViewHelper.grainyBackground( view, 1024 ); var count:int = Math.sqrt( MaterialHelper.MAT_LIST.length ); var cylSize:Number = 100; var margin:Number = 30; var size:int = ( count * cylSize ) + ( ( count - 1 ) * margin ); var i:int = 0; for each( var material:ColorMaterial in MaterialHelper.MAT_LIST ) { var cylinder:Cylinder = new Cylinder( material, cylSize * .5, cylSize * .5, cylSize ); cylinder.x = -size / 2 + ( cylSize + margin ) * ( i % count ); cylinder.y = size / 2 - ( cylSize + margin ) * int( i / count ); material.lights = [ lights[ 0 ], lights[2], lights[ 3 ] ]; if ( material.alpha != 1 ) MaterialHelper.createEnvrionmentMap( material, envMap ); material.smooth = false; addMesh( cylinder ); i++; } } } }