소스 검색

Initialize WebGL context in OS

Leon Krause 7 년 전
부모
커밋
2dbf8251bc
1개의 변경된 파일7개의 추가작업 그리고 3개의 파일을 삭제
  1. 7 3
      platform/javascript/engine.js

+ 7 - 3
platform/javascript/engine.js

@@ -138,13 +138,17 @@
 			}
 
 			var actualCanvas = this.rtenv.canvas;
-			var context = false;
+			var testContext = false;
+			var testCanvas;
 			try {
-				context = actualCanvas.getContext('webgl2') || actualCanvas.getContext('experimental-webgl2');
+				testCanvas = document.createElement('canvas');
+				testContext = testCanvas.getContext('webgl2') || testCanvas.getContext('experimental-webgl2');
 			} catch (e) {}
-			if (!context) {
+			if (!testContext) {
 				throw new Error("WebGL 2 not available");
 			}
+			testCanvas = null;
+			testContext = null;
 
 			// canvas can grab focus on click
 			if (actualCanvas.tabIndex < 0) {