Selaa lähdekoodia

Add generic Renderer to Object3D and use it when extending for css renderers

Julien Dargelos 5 vuotta sitten
vanhempi
commit
58210a17f6

+ 1 - 1
examples/jsm/renderers/CSS2DRenderer.d.ts

@@ -4,7 +4,7 @@ import {
 	Camera
 } from '../../../src/Three';
 
-export class CSS2DObject extends Object3D {
+export class CSS2DObject extends Object3D<CSS2DRenderer> {
 
 	constructor( element: HTMLElement );
 	element: HTMLElement;

+ 1 - 1
examples/jsm/renderers/CSS3DRenderer.d.ts

@@ -4,7 +4,7 @@ import {
 	Camera
 } from '../../../src/Three';
 
-export class CSS3DObject extends Object3D {
+export class CSS3DObject extends Object3D<CSS3DRenderer> {
 
 	constructor( element: HTMLElement );
 	element: HTMLElement;

+ 3 - 3
src/core/Object3D.d.ts

@@ -20,7 +20,7 @@ export let Object3DIdCount: number;
 /**
  * Base class for scene graph objects
  */
-export class Object3D extends EventDispatcher {
+export class Object3D<Renderer = WebGLRenderer> extends EventDispatcher {
 
 	constructor();
 
@@ -154,7 +154,7 @@ export class Object3D extends EventDispatcher {
 	 * Calls before rendering object
 	 */
 	onBeforeRender: (
-		renderer: WebGLRenderer,
+		renderer: Renderer,
 		scene: Scene,
 		camera: Camera,
 		geometry: Geometry | BufferGeometry,
@@ -166,7 +166,7 @@ export class Object3D extends EventDispatcher {
 	 * Calls after rendering object
 	 */
 	onAfterRender: (
-		renderer: WebGLRenderer,
+		renderer: Renderer,
 		scene: Scene,
 		camera: Camera,
 		geometry: Geometry | BufferGeometry,