threejs 初始化
import * as THREE from "three";
import { OrbitControls } from "three/addons/controls/OrbitControls.js";
import config from "./config";
const scene = new THREE.Scene();
let offsetVector = new THREE.Vector3(0, -5, 0);
scene.position.add(offsetVector);
scene.rotateY(-0.6);
scene.fog = new THREE.Fog(0xffffff, -100, 2000);
const camera = new THREE.PerspectiveCamera(45, config.cWidth / config.cHeight, 0.01, 30000);
camera.position.set(100, 100, 100);
let x = 0,
y = 0,
z = 0;
camera.lookAt(x, y, z);
const renderer = new THREE.WebGLRenderer({
antialias: true,
logarithmicDepthBuffer: true,
});
renderer.setPixelRatio(window.devicePixelRatio);
renderer.setSize(config.cWidth, config.cHeight);
renderer.physicallyCorrectLights = true;
renderer.shadowMap.enabled = true;
renderer.shadowMap.type = THREE.VSMShadowMap;
renderer.setClearAlpha(0.0);
const orbitControls = new OrbitControls(camera, renderer.domElement);
orbitControls.enableDamping = true;
orbitControls.dampingFactor = 0.1;
orbitControls.target.set(x, y, z);
orbitControls.update();
const axesHelper = new THREE.AxesHelper(150);
axesHelper.position.set(0, 0, 0);
scene.add(axesHelper);
export { scene, renderer, camera, orbitControls, axesHelper };