@@ -20985,39 +20985,34 @@ module.exports.Component = registerComponent('screenshot', {
2098520985 type: 'selector'
2098620986 }
2098720987 },
20988- init : function () {
20988+ setup : function () {
2098920989 var el = this.el;
20990- var self = this;
20991- if (el.renderer) {
20992- setup();
20993- } else {
20994- el.addEventListener('render-target-loaded', setup);
20990+ if (this.canvas) {
20991+ return;
2099520992 }
20996- function setup() {
20997- var gl = el.renderer.getContext();
20998- if (!gl) {
20999- return;
21000- }
21001- self.cubeMapSize = gl.getParameter(gl.MAX_CUBE_MAP_TEXTURE_SIZE);
21002- self.material = new THREE.RawShaderMaterial({
21003- uniforms: {
21004- map: {
21005- type: 't',
21006- value: null
21007- }
21008- },
21009- vertexShader: VERTEX_SHADER,
21010- fragmentShader: FRAGMENT_SHADER,
21011- side: THREE.DoubleSide
21012- });
21013- self.quad = new THREE.Mesh(new THREE.PlaneGeometry(1, 1), self.material);
21014- self.quad.visible = false;
21015- self.camera = new THREE.OrthographicCamera(-1 / 2, 1 / 2, 1 / 2, -1 / 2, -10000, 10000);
21016- self.canvas = document.createElement('canvas');
21017- self.ctx = self.canvas.getContext('2d');
21018- el.object3D.add(self.quad);
21019- self.onKeyDown = self.onKeyDown.bind(self);
20993+ var gl = el.renderer.getContext();
20994+ if (!gl) {
20995+ return;
2102020996 }
20997+ this.cubeMapSize = gl.getParameter(gl.MAX_CUBE_MAP_TEXTURE_SIZE);
20998+ this.material = new THREE.RawShaderMaterial({
20999+ uniforms: {
21000+ map: {
21001+ type: 't',
21002+ value: null
21003+ }
21004+ },
21005+ vertexShader: VERTEX_SHADER,
21006+ fragmentShader: FRAGMENT_SHADER,
21007+ side: THREE.DoubleSide
21008+ });
21009+ this.quad = new THREE.Mesh(new THREE.PlaneGeometry(1, 1), this.material);
21010+ this.quad.visible = false;
21011+ this.camera = new THREE.OrthographicCamera(-1 / 2, 1 / 2, 1 / 2, -1 / 2, -10000, 10000);
21012+ this.canvas = document.createElement('canvas');
21013+ this.ctx = this.canvas.getContext('2d');
21014+ el.object3D.add(this.quad);
21015+ this.onKeyDown = this.onKeyDown.bind(this);
2102121016 },
2102221017 getRenderTarget: function (width, height) {
2102321018 return new THREE.WebGLRenderTarget(width, height, {
@@ -21118,6 +21113,7 @@ module.exports.Component = registerComponent('screenshot', {
2111821113 var isVREnabled = this.el.renderer.xr.enabled;
2111921114 var renderer = this.el.renderer;
2112021115 var params;
21116+ this.setup();
2112121117 // Disable VR.
2112221118 renderer.xr.enabled = false;
2112321119 params = this.setCapture(projection);
@@ -30824,7 +30820,7 @@ __webpack_require__(/*! ./core/a-mixin */ "./src/core/a-mixin.js");
3082430820// Extras.
3082530821__webpack_require__(/*! ./extras/components/ */ "./src/extras/components/index.js");
3082630822__webpack_require__(/*! ./extras/primitives/ */ "./src/extras/primitives/index.js");
30827- console.log('A-Frame Version: 1.5.0 (Date 2024-01-31 , Commit #a3805692 )');
30823+ console.log('A-Frame Version: 1.5.0 (Date 2024-02-02 , Commit #e489e5ac )');
3082830824console.log('THREE Version (https://github.com/supermedium/three.js):', pkg.dependencies['super-three']);
3082930825console.log('WebVR Polyfill Version:', pkg.dependencies['webvr-polyfill']);
3083030826module.exports = window.AFRAME = {
0 commit comments