From fed41b2fd390ae729c05f63fcbc9f5e93cfd8f71 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期五, 19 四月 2024 15:56:03 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/views/screen/components/screen-map-three/experience/renderer.js | 37 +++++++++++++++++++++++++++++++++++++ 1 files changed, 37 insertions(+), 0 deletions(-) diff --git a/src/views/screen/components/screen-map-three/experience/renderer.js b/src/views/screen/components/screen-map-three/experience/renderer.js new file mode 100644 index 0000000..a5febfa --- /dev/null +++ b/src/views/screen/components/screen-map-three/experience/renderer.js @@ -0,0 +1,37 @@ +import * as THREE from 'three'; +export default class Renderer { + constructor(experience) { + this.experience = experience; + this.canvas = this.experience.canvas; + this.sizes = this.experience.sizes; + this.scene = this.experience.scene; + this.camera = this.experience.camera; + + this.setInstance(); + } + setInstance() { + this.instance = new THREE.WebGLRenderer({ + canvas: this.canvas, + antialias: true, + alpha: true, + logarithmicDepthBuffer: true + }); + // this.instance.toneMapping = THREE.CineonToneMapping; + // this.instance.toneMappingExposure = 1.75; + // this.instance.shadowMap.enabled = true; + // this.instance.shadowMap.type = THREE.PCFSoftShadowMap; + this.instance.setSize(this.sizes.width, this.sizes.height); + this.instance.setPixelRatio(this.sizes.pixelRatio); + } + resize() { + this.instance.setSize(this.sizes.width, this.sizes.height); + this.instance.setPixelRatio(this.sizes.pixelRatio); + } + update() { + this.instance.render(this.scene, this.camera.instance); + } + destroy() { + this.instance.dispose(); + this.instance.domElement.remove(); + } +} \ No newline at end of file -- Gitblit v1.8.0