Есть такой код Alternativa3D_8.27.0

Код AS3:
package {
import alternativa.engine3d.controllers.*;
import alternativa.engine3d.core.*;
import alternativa.engine3d.lights.*;
import alternativa.engine3d.materials.*;
import alternativa.engine3d.primitives.*;
import alternativa.engine3d.resources.*;
import alternativa.engine3d.shadows.*;
import flash.display.*;
import flash.events.*;
/**
* Alternativa3D "Hello world!" application.
* Создание простейшего трёхмерного приложения.
*/
public class HelloAlternativa3D extends Sprite {
private var rootContainer:Object3D = new Object3D();
private var camera:Camera3D;
private var stage3D:Stage3D;
private var box:Box;
public function HelloAlternativa3D() {
// Ресурсы
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage3D = stage.stage3Ds[0];
stage3D.addEventListener(Event.CONTEXT3D_CREATE, onContextCreate);
stage3D.requestContext3D();
}
private function onContextCreate(e:Event):void {
//ресурсы
var grass_diffuse:BitmapTextureResource = new BitmapTextureResource(new BitmapData(1, 1, false, 0xFF0000));
var grass_normal:BitmapTextureResource = new BitmapTextureResource(new BitmapData(1, 1, false, 0x7F7FFF));
var box_normal:BitmapTextureResource = new BitmapTextureResource(new BitmapData(1, 1, false, 0xFFFFFF));
grass_diffuse.upload(stage3D.context3D);
grass_normal.upload(stage3D.context3D);
box_normal.upload(stage3D.context3D);
// Camera and view
// Создание камеры и вьюпорта
camera = new Camera3D(0.1, 10000);
camera.view = new View(stage.stageWidth, stage.stageHeight, false, 0, 0, 4);
addChild(camera.view);
addChild(camera.diagram);
// Initial position
// Установка положения камеры
camera.rotationX = -120*Math.PI/180;
camera.y = -800;
camera.z = 400;
rootContainer.addChild(camera);
// Light sources
// Источники света
var ambientLight:AmbientLight = new AmbientLight(0x333333);
ambientLight.intensity = 3;
rootContainer.addChild(ambientLight);
var directionalLight:DirectionalLight = new DirectionalLight(0xFFFF99);
directionalLight.z = 20000;
directionalLight.y = -20000;
directionalLight.x = 20000;
directionalLight.intensity = 1;
directionalLight.lookAt(2000, 0, 0);
//rootContainer.addChild(directionalLight);
// Primitive box
// Создание примитива
box = new Box(250, 250, 250, 1, 1, 1, true);
box.z = 200;
var material:StandardMaterial = new StandardMaterial(box_normal, box_normal);
box.setMaterialToAllSurfaces(material);
rootContainer.addChild(box);
var plane:Plane = new Plane(1000, 1000);
var planeMaterial:StandardMaterial = new StandardMaterial(grass_diffuse, grass_normal);
plane.setMaterialToAllSurfaces(planeMaterial);
rootContainer.addChild(plane);
// Shadow
// Тень
var shadow:DirectionalLightShadow = new DirectionalLightShadow(1000, 1000, -500, 500, 512, 2);
shadow.biasMultiplier = 0.97;
shadow.addCaster(plane);
shadow.addCaster(box);
directionalLight.shadow = shadow;
for each (var resource:Resource in rootContainer.getResources(true)) {
resource.upload(stage3D.context3D);
}
// Listeners
// Подписка на события
stage.addEventListener(Event.ENTER_FRAME, onEnterFrame);
}
private function onEnterFrame(e:Event):void {
// Width and height of view
// Установка ширины и высоты вьюпорта
camera.view.width = stage.stageWidth;
camera.view.height = stage.stageHeight;
// Rotation
// Вращение примитива
box.rotationZ -= 0.01;
// Render
// Отрисовка
camera.render(stage3D);
}
}
}
Мне хочется собрать простейший пример с тенью. Вот если раскоментировать строку

Код AS3:
//rootContainer.addChild(directionalLight);
то тень появляется, но куб становится чёрным
Как этот простейший пример перевести на away (away3d-core-fp11_4_0_0_beta.swc)
Нужно что-бы была тень от куба на план. В авэй сильно сложные и тяжёлые примеры.