Moved loggers out of global module scope.

This commit is contained in:
Michael Mainguy 2024-04-28 11:07:03 -05:00
parent e27a77d674
commit eb4281ac30
3 changed files with 24 additions and 3 deletions

View File

@ -112,6 +112,11 @@ export class Rigplatform {
}
private registerObserver() {
if (this.registered) {
this.logger.warn('observer already registered, clearing and re registering');
this.controllers.controllerObservable.clear();
this.registered = false;
}
if (!this.registered) {
this.registered = true;
this.controllers.controllerObservable.add((event: ControllerEvent) => {
@ -150,11 +155,14 @@ export class Rigplatform {
break;
}
});
} else {
this.logger.warn('observer already registered');
}
}
private initializeControllers() {
this.xr.input.onControllerAddedObservable.add((source) => {
this.registerObserver();
let controller;
@ -175,6 +183,9 @@ export class Rigplatform {
controller.setRig(this);
}
});
this.xr.input.onControllerRemovedObservable.add((source) => {
this.logger.debug('controller removed', source);
});
}
private fixRotation() {

View File

@ -35,10 +35,13 @@ export async function groundMeshObserver(ground: AbstractMesh,
const vrSupported = await xr.baseExperience.sessionManager.isSessionSupportedAsync('immersive-vr');
if (vrSupported) {
enterButton.classList.remove('inactive');
enterButton.addEventListener('click', (evt) => {
enterButton.addEventListener('click', async (evt) => {
evt.preventDefault();
//const voice = new VoiceRecognizer();
xr.baseExperience.enterXRAsync('immersive-vr', 'local-floor');
logger.debug('entering XR');
const enter = await xr.baseExperience.enterXRAsync('immersive-vr', 'local-floor');
logger.debug(enter);
});
}
@ -65,6 +68,13 @@ export async function groundMeshObserver(ground: AbstractMesh,
}
});
break;
case WebXRState.EXITING_XR:
setTimeout(() => {
logger.debug('reloading');
window.location.reload();
}, 500);
}
});

View File

@ -15,7 +15,7 @@ import {Introduction} from "./tutorial/introduction";
const webGpu = false;
log.setLevel('debug', false);
log.setLevel('error', false);
export class VrApp {
private engine: WebGPUEngine | Engine;