import * as THREE from '../libs/build/three.module.js';
import { OrbitControls } from '../libs/jsm/controls/OrbitControls.js'
import { CSS2DRenderer, CSS2DObject } from '../libs/jsm/renderers/CSS2DRenderer.js'
let scene,camera,renderer,controls,load
scene=new THREE.Scene()
camera=new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 0.1, 200)
camera.position.set(20,20,20)
camera.aspect = window.innerWidth / window.innerHeight;
camera.updateProjectionMatrix();
scene.add(camera);
renderer=new THREE.WebGLRenderer({
antialias: true,
logarithmicDepthBuffer: true,
})
renderer.setSize(window.innerWidth , window.innerHeight)
renderer.setClearColor(0xeeeeee,1.0);
window.addEventListener("resize", () => {
camera.aspect = window.innerWidth / window.innerHeight;
camera.updateProjectionMatrix();
renderer.setSize(window.innerWidth, window.innerHeight);
});
document.body.append(renderer.domElement)
controls=new OrbitControls(camera,renderer.domElement)
function render(params) {
renderer.render(scene,camera)
requestAnimationFrame(render);
}
const dirLight = new THREE.SpotLight(0xffffff);
dirLight.position.set(0, 2, 10);
dirLight.intensity = 5;
dirLight.castShadow = true;
scene.add(dirLight)
const aLight = new THREE.AmbientLight(0xffffff)
aLight.intensity = 3
scene.add(aLight)
render()
load=new THREE.BoxGeometry( 20, 40, 0.8 );
const loadmaterial = new THREE.MeshBasicMaterial( {color: 0x999999} );
const loadMain = new THREE.Mesh(load, loadmaterial);
loadMain.rotation.x = -Math.PI / 2;
loadMain. receiveShadow = true;
scene.add(loadMain)