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