私はaway3dにかなり慣れていません。陰影のあるオブジェクトで基本的なシーンをまとめた後、なぜそれらが互いに影を付けないのか疑問に思いました。
私の例では、平面の上に立方体があり、両方の上に指向性ライトがあります。立方体をその下の平面に影を落とすにはどうすればよいですか?
この例は、away3d3.6を使用して記述されています
package {
import flash.display.MovieClip;
import flash.events.*;
import away3d.containers.View3D;
import away3d.primitives.Cube;
import away3d.primitives.Plane;
import away3d.lights.DirectionalLight3D;
import away3d.materials.PhongColorMaterial;
import away3d.materials.ColorMaterial;
import flash.geom.Vector3D;
public class Test7 extends MovieClip {
public var view:View3D;
public var light:DirectionalLight3D;
public var cube:Cube;
public var plane:Plane;
public function Test7() {
// constructor code
view = new View3D();
view.x = 200;
view.y = 200;
view.z = 150;
light = new DirectionalLight3D();
light.direction = new Vector3D(0, -1, 0);
light.brightness = 5;
view.scene.addLight(light);
plane = new Plane();
plane.material = new PhongColorMaterial(0xCCCCCC);
plane.width = 1000;
plane.height = 1000;
plane.segmentsH =
plane.segmentsW = 10;
plane.y = -100;
view.scene.addChild(plane);
cube = new Cube();
cube.rotationX = 45;
cube.rotationY = 45;
cube.segmentsD =
cube.segmentsH =
cube.segmentsW = 10;
cube.material = new PhongColorMaterial(0x330099);
view.scene.addChild(cube);
addChild(view);
addEventListener(Event.ENTER_FRAME, render);
}
public function render(e:Event):void {
view.render();
}
}
}