In my project ground to be in one class(class Track), scene and car to
be in other class(class Racing). I need that ground casts shadows from
car. All models pars from .obj
in class Track:
[CODE]
...public function Track(fixLight:DirectionalLight = null) {
initMaterials(fixLight);
initMesh();
}
public function get mesh() : ObjectContainer3D
{
return objCont;
}
private function initMesh() : void
{
ResourceManager.instance.addEventListener(ResourceEvent.RESOURCE_RETRIEVED,
onResourceComp);
contMesh = new ObjectContainer3D();
seg01 = ObjectContainer3D(ResourceManager.instance.getResource("Tracks/
Hillside/seg01.obj"));
contMesh.addChild(seg01);
}
private function onResourceComp(event : ResourceEvent) : void
{
if (event.uri == "Tracks/Hillside/seg01.obj") {
var road01:Mesh;
road01 = Mesh(seg01.getChildAt(0));
road01.geometry.scale(5);
road01.castsShadows = true;
road01.material = segMat01;
}
}
private function initMaterials(xlight:DirectionalLight = null) : void
{
var sM01:BitmapData = new
Seg01Tex().bitmapData;
segMat01 = new BitmapMaterial (sM01);
segMat01.lights = [xlight];
segMat01.shadowMethod = new SoftShadowMapMethod(xlight);
}
}
[/CODE]
in class Racing:
[CODE]
...track = new Hillside(mylight);
view.scene.addChild(track.objCont);...
[/CODE]
All worck but no shadow, be cause I send in class Racing a
ObjectContainer3D. How make shadow in this situation?
How send in class Racing - Mesh?