away3d 4.0中的阴影
away3d 4.0中的加载模型代码变化很大,为加载模型带来挺大的工作量。加载成功后为了实现阴影,首先需要DirectionalLight[code lang="as3"] _light = new DirectionalLight(-1,-1,-1);
_view.scene.addChild(_light);[/code]
注意:需要放置到建筑物的内部
然后,设置地面的材质:
[code lang="as3"] var floorMaterial:TextureMaterial = new TextureMaterial(new BitmapTexture(new Grass().bitmapData),true,true,true);
floorMaterial.shadowMethod = new FilteredShadowMapMethod(_light3);
floorMaterial.lightPicker = new StaticLightPicker([_light1,_light2]);
floorMaterial.specular = 0;
var floor:Mesh = new Mesh(new CubeGeometry(1500,2,1500,1,1,1),floorMaterial);
floor.geometry.scaleUV(20,20);
floor.position = new Vector3D(30,-51,0);
_view.scene.addChild(floor);[/code]
效果如图:
<img class="aligncenter" title="away3d-shadow" src="http://www.everyinch.net/wp-content/uploads/2012/05/away3d-shadow-300x199.jpg" alt="" width="300" height="199" />
源文件:architecture.rar