diff options
Diffstat (limited to 'client/splash/renderer.js')
| -rw-r--r-- | client/splash/renderer.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/client/splash/renderer.js b/client/splash/renderer.js new file mode 100644 index 00000000..75a0fd0e --- /dev/null +++ b/client/splash/renderer.js @@ -0,0 +1,43 @@ +import * as THREE from 'three' + +export const scene = new THREE.Scene() +scene.fog = new THREE.Fog(0x191919, 2, 15) + +export const camera = new THREE.PerspectiveCamera(35, window.innerWidth / window.innerHeight, 1, 15) +camera.position.set(3, 0.15, 3) + +// export const camera = new THREE.PerspectiveCamera(70, w / h, 1, 10000) +// camera.position.x = 0 +// camera.position.y = 0 +// camera.position.z = 200 + +// let cameraTarget = new THREE.Vector3(0, 0, 0) + +export const renderer = new THREE.WebGLRenderer({ antialias: true, alpha: true }) +renderer.setClearColor(scene.fog.color) +// renderer.setClearColor(0x000000, 0) +renderer.setPixelRatio(window.devicePixelRatio) +renderer.setSize(window.innerWidth, window.innerHeight) + +let lights = [ + new THREE.DirectionalLight(0xefefff, 1.5), + new THREE.DirectionalLight(0xefefff, 1.5), +] +lights[0].position.set(1, 1, 1).normalize() +lights[1].position.set(-1, -1, -1).normalize() +lights.forEach(light => scene.add(light)) + +export function init() { + const container = document.querySelector('#three_container') + container.appendChild(renderer.domElement) + console.log('rednerer init') + window.addEventListener('resize', () => { + camera.aspect = window.innerWidth / window.innerHeight + camera.updateProjectionMatrix() + renderer.setSize(window.innerWidth, window.innerHeight) + }, false) +} + +export function render() { + renderer.render(scene, camera) +} |
