|
@@ -110,14 +110,6 @@ AFRAME.registerSystem('ar', {
|
110
|
110
|
{
|
111
|
111
|
const scene = this.el;
|
112
|
112
|
|
113
|
|
- // read trackable pointers
|
114
|
|
- this.pointers.length = 0;
|
115
|
|
- if(this.frame) {
|
116
|
|
- const newPointers = this._utils.getTrackablePointers(this.frame);
|
117
|
|
- if(newPointers.length > 0)
|
118
|
|
- this.pointers.push.apply(this.pointers, newPointers);
|
119
|
|
- }
|
120
|
|
-
|
121
|
113
|
// we take control of the rendering
|
122
|
114
|
scene.renderer.setAnimationLoop(null);
|
123
|
115
|
|
|
@@ -216,6 +208,7 @@ AFRAME.registerSystem('ar', {
|
216
|
208
|
|
217
|
209
|
session.addEventListener('end', () => {
|
218
|
210
|
this.frame = null;
|
|
211
|
+ this.pointers.length = 0;
|
219
|
212
|
});
|
220
|
213
|
|
221
|
214
|
session.viewport.addEventListener('resize', () => {
|
|
@@ -234,9 +227,13 @@ AFRAME.registerSystem('ar', {
|
234
|
227
|
|
235
|
228
|
scene.object3D.background = null;
|
236
|
229
|
|
|
230
|
+ // animation loop
|
237
|
231
|
const animate = (time, frame) => {
|
238
|
232
|
this.frame = frame;
|
|
233
|
+ this._updateTrackablePointers();
|
|
234
|
+
|
239
|
235
|
scene.render();
|
|
236
|
+
|
240
|
237
|
session.requestAnimationFrame(animate);
|
241
|
238
|
};
|
242
|
239
|
|
|
@@ -311,6 +308,15 @@ AFRAME.registerSystem('ar', {
|
311
|
308
|
return sessionComponent.preferences();
|
312
|
309
|
},
|
313
|
310
|
|
|
311
|
+ _updateTrackablePointers()
|
|
312
|
+ {
|
|
313
|
+ this.pointers.length = 0;
|
|
314
|
+
|
|
315
|
+ const newPointers = this._utils.getTrackablePointers(this.frame);
|
|
316
|
+ if(newPointers.length > 0)
|
|
317
|
+ this.pointers.push.apply(this.pointers, newPointers);
|
|
318
|
+ },
|
|
319
|
+
|
314
|
320
|
});
|
315
|
321
|
|
316
|
322
|
/**
|