| override protected function onInit():void
{
var md2:MD2 = new MD2();
var light:Light = new Light();
var _texture:Bitmap = new Texture as Bitmap;
var _bitmap:BitmapData = new BitmapData(_texture.width, _texture.height, false);
_bitmap.draw(_texture);
var _normalMap:Bitmap = new Normal as Bitmap;
switch(mySwitchNum)
{
case 0: //Normal Shader
var rLight:DirectionalLight3D = new DirectionalLight3D();
rLight.direction = new Vector3D(1, 0, 0);
rLight.color = 0xFF0000;
rLight.ambient = 0.1;
scene.addLight(rLight);
var gLight:DirectionalLight3D = new DirectionalLight3D();
gLight.direction = new Vector3D(0, 1, 0);
gLight.color = 0x00FF00;
gLight.ambient = 0.1;
scene.addLight(gLight);
var bLight:DirectionalLight3D = new DirectionalLight3D();
bLight.direction = new Vector3D(0, 0, 1);
bLight.color = 0x0000FF;
bLight.ambient = 0.1;
scene.addLight(bLight);
var material:BitmapMaterial = new Dot3BitmapMaterial(_bitmap, _normalMap.bitmapData);
material.smooth = true;
md2.material = material;
md2.centerMeshes = true;
break;
case 1: //Plane Material
/*var filter1:BevelFilter = new BevelFilter(10, 45, 0xFFFFFF, 0.5, 0×000000, 0.5, 10, 10, 50);
var filter2:GlowFilter = new GlowFilter(0xFFFFFF, 1, 50, 50);
var filter3:GlowFilter = new GlowFilter(0xFF0000, 1, 50, 50);
*/
var planeMaterial:BitmapMaterial = new BitmapMaterial(_bitmap);
md2.material = planeMaterial;
md2.centerMeshes = true;
break;
case 2: //Flat Shader
var myFlatShader:FlatShader = new FlatShader(light);
md2.material = myFlatShader;
md2.centerMeshes = true;
light.x=light.y =400;
light.z = -400;
scene.addChild(light);
break;
case 3: //Phong Color Shader
var myPhongColorShader:PhongColorMaterial = new PhongColorMaterial(light, 0x00ff00);
md2.material = myPhongColorShader;
light.x=light.y =400;
light.z = -400;
scene.addChild(light);
md2.centerMeshes = true;
break;
case 4: //Phong Shader
var myPhongShader:PhongMaterial = new PhongMaterial(light, _bitmap);
md2.material = myPhongShader;
md2.centerMeshes = true;
light.x=light.y =400;
light.z = -400;
scene.addChild(light);
break;
case 5: //PBJ Filter
var mat:PBBitmapShader = new PBBitmapShader(light, _bitmap, _normalMap.bitmapData);
md2.material = mat;
md2.centerMeshes = true;
light.x=light.y =400;
light.z = -400;
scene.addChild(light);
break;
case 6: //Shader
var mat2:PBTransparentShader = new PBTransparentShader(light, _bitmap, _normalMap.bitmapData);
md2.material = mat2;
md2.centerMeshes = true;
light.x=light.y =400;
light.z = -400;
scene.addChild(light);
break;
case 7: //Shader
var myShader:VertexShaderMaterial = new VertexShaderMaterial(light, _bitmap);
md2.material = myShader;
md2.centerMeshes = true;
light.x=light.y =400;
light.z = -400;
scene.addChild(light);
break;
default:
trace(“Out of range”);
break;
}
var loader:Loader3D = new Loader3D();
loader.loadGeometry(“assets/torsov2.MD2″, md2);
loader.addEventListener(Loader3DEvent.LOAD_SUCCESS, onSuccess);
scene.addChild(loader);
camera.z = -200;
} |