From 045a0377eeeaa8a86bf9f03ce69638eb5eb4777a Mon Sep 17 00:00:00 2001 From: MrKBear Date: Thu, 24 Feb 2022 16:15:27 +0800 Subject: [PATCH] Remove canvas ele param from basic renderer --- source/GLRender/BasicRenderer.ts | 8 +++++--- source/Page/Laboratory/Laboratory.tsx | 3 +-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/source/GLRender/BasicRenderer.ts b/source/GLRender/BasicRenderer.ts index 3c56fc4..c747987 100644 --- a/source/GLRender/BasicRenderer.ts +++ b/source/GLRender/BasicRenderer.ts @@ -5,7 +5,9 @@ import { GLContext } from "./GLContext"; import { Camera } from "./Camera"; import { Clock } from "@GLRender/Clock"; -interface IRendererOwnParams {} +interface IRendererOwnParams { + canvas: HTMLCanvasElement; +} /** * 渲染器参数 @@ -38,7 +40,7 @@ abstract class BasicRenderer< */ protected clock: Clock; - public constructor(canvas: HTMLCanvasElement, param: Partial = {}) { + public constructor(param: Partial = {}) { super(); // 初始化参数 @@ -50,7 +52,7 @@ abstract class BasicRenderer< } as M & IRendererParams; // 实例化画布对象 - this.canvas = new GLCanvas(canvas, this.param); + this.canvas = new GLCanvas(param.canvas, this.param); // 实例化摄像机 this.camera = new Camera(this.canvas); diff --git a/source/Page/Laboratory/Laboratory.tsx b/source/Page/Laboratory/Laboratory.tsx index 04f1a93..19cb789 100644 --- a/source/Page/Laboratory/Laboratory.tsx +++ b/source/Page/Laboratory/Laboratory.tsx @@ -21,8 +21,7 @@ class Laboratory extends Component { throw new Error("Laboratory: 重复引用 canvas 节点"); } - const canvas = document.createElement("canvas"); - const renderer = new ClassicRenderer(canvas, { className: "canvas" }); + const renderer = new ClassicRenderer({ className: "canvas" }); this.canvasContRef.current.appendChild(renderer.canvas.dom); renderer.onLoad();