瀏覽代碼

Fixed TGALoader failing with web workers because of undefined document

Merwan Achibet 6 年之前
父節點
當前提交
f232212f3b
共有 1 個文件被更改,包括 4 次插入2 次删除
  1. 4 2
      examples/js/loaders/TGALoader.js

+ 4 - 2
examples/js/loaders/TGALoader.js

@@ -522,7 +522,9 @@ THREE.TGALoader.prototype = {
 
 		//
 
-		var canvas = document.createElement( 'canvas' );
+		var useOffscreen = typeof OffscreenCanvas !== 'undefined';
+
+		var canvas = useOffscreen ? new OffscreenCanvas(header.width, header.height) : document.createElement( 'canvas' );
 		canvas.width = header.width;
 		canvas.height = header.height;
 
@@ -534,7 +536,7 @@ THREE.TGALoader.prototype = {
 
 		context.putImageData( imageData, 0, 0 );
 
-		return canvas;
+		return useOffscreen ? canvas.transferToImageBitmap() : canvas;
 
 	},