3

原点から遠く離れたモデルがあり、太陽光のようにディレクショナル ライトをモデルに当てたいと考えています。

DirectionalLight の位置とターゲットを設定します。

export const dirLight = getDirectional(); 
function getDirectional()  {
    const dirLight = new DirectionalLight( 0xffffff, 1 );
    dirLight.position.set( 585000 + 10000, 6135000 + 10000, -500 + 5000);

    return dirLight;
};


const helper = new THREE.DirectionalLightHelper( dirLight, 1000 );
let t = new THREE.Object3D();
t.translateX(585000);
t.translateY(6135000);
t.translateZ(1000);
dirLight.target = t;
scene.add(dirLight);
scene.add(dirLight.target);
scene.add(t);
helper.update();
scene.add( helper );

光の方向は、光の位置と光のターゲットの間のベクトルに平行になると予想されますが、光の方向はまだシーンの原点に向かっているようです。私は何を間違っていますか?

実行例はここで見ることができます

4

2 に答える 2