Jelajahi Sumber

GLTFExporter allow OffscreenCanvas as image source (#27872)

Co-authored-by: Kevin Meijer <[email protected]>
strunkie30 1 tahun lalu
induk
melakukan
f9e584866c
1 mengubah file dengan 3 tambahan dan 2 penghapusan
  1. 3 2
      examples/jsm/exporters/GLTFExporter.js

+ 3 - 2
examples/jsm/exporters/GLTFExporter.js

@@ -1290,13 +1290,14 @@ class GLTFWriter {
 
 
 				if ( ( typeof HTMLImageElement !== 'undefined' && image instanceof HTMLImageElement ) ||
 				if ( ( typeof HTMLImageElement !== 'undefined' && image instanceof HTMLImageElement ) ||
 					( typeof HTMLCanvasElement !== 'undefined' && image instanceof HTMLCanvasElement ) ||
 					( typeof HTMLCanvasElement !== 'undefined' && image instanceof HTMLCanvasElement ) ||
-					( typeof ImageBitmap !== 'undefined' && image instanceof ImageBitmap ) ) {
+					( typeof ImageBitmap !== 'undefined' && image instanceof ImageBitmap ) ||
+					( typeof OffscreenCanvas !== 'undefined' && image instanceof OffscreenCanvas ) ) {
 
 
 					ctx.drawImage( image, 0, 0, canvas.width, canvas.height );
 					ctx.drawImage( image, 0, 0, canvas.width, canvas.height );
 
 
 				} else {
 				} else {
 
 
-					throw new Error( 'THREE.GLTFExporter: Invalid image type. Use HTMLImageElement, HTMLCanvasElement or ImageBitmap.' );
+					throw new Error( 'THREE.GLTFExporter: Invalid image type. Use HTMLImageElement, HTMLCanvasElement, ImageBitmap or OffscreenCanvas.' );
 
 
 				}
 				}