Ich bin ein Anfänger mit Javascript und THREE.js und ich brauche Hilfe.unvollständiger Schatten mit THREE.js
können Sie unten sehen, was ich erhalten
und dies ist der Code:
// on initialise le moteur de rendu
renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
document.getElementById('container').appendChild(renderer.domElement);
// on initialise la scène
scene = new THREE.Scene();
// on initialise la camera que l’on place ensuite sur la scène
camera = new THREE.PerspectiveCamera(50, window.innerWidth/window.innerHeight, 1, 100000);
camera.position.set(0, 0, 1000);
scene.add(camera);
// plane
\t me = new THREE.Mesh(new THREE.PlaneGeometry(900,550), new THREE.MeshPhongMaterial({color: 0xffffff}));
\t scene.add(me);
me.position.x = 130;
me.position.y = 10;
me.rotation.y = -20;
// on créé un cube au quel on définie un matériau puis on l’ajoute à la scène
cube = new THREE.Mesh(new THREE.CubeGeometry(100, 100, 100), new THREE.MeshPhongMaterial({color:0x00ffff}));
scene.add(cube);
cube.position.y = 0;
cube.position.x = 20;
cube.position.z = 0;
cube.rotation.y = 0;
scene.add(new THREE.AmbientLight(0x212223));
light = new THREE.SpotLight(0xffffff, 1);
light.position.set(-300,-100,20);
light.angle = Math.PI/5;
light.shadowCameraVisible = true;
scene.add(light);
renderer.shadowMap.enabled = true;
renderer.shadowMapDarkness = 1;
light.castShadow = true;
light.intensity = 0.8;
cube.castShadow = true;
cube.receiveShadow = true;
me.receiveShadow = true;
lightHelper = new THREE.SpotLightHelper(light);
scene.add(lightHelper);
renderer.render(scene, camera);
den Rest meines Code Änderung der x- und y-Wert des Lichts oder der Würfel und der Schatten des Würfels ist nicht immer komplett und ich verstehe nicht warum ... Wie ich bin Anfänger bin ich denke ich habe einen Fehler gemacht in meinem Code.
Ich habe versucht, Ihren Code auf meiner Maschine und es hat funktioniert: Der Schatten ist abgeschlossen. Versuchen Sie alles zu aktualisieren. – Arnaud
ja seine Arbeit, wenn ich die position.x = 300, aber es funktioniert nicht mit allen x-Werten und ich verstehe nicht warum (der Rest meiner Animation ändern den x-Wert) – sami54