From b59ad398db0331643b842776395a6661cb50d6be Mon Sep 17 00:00:00 2001 From: Michael Mainguy Date: Mon, 15 Apr 2024 11:40:31 -0500 Subject: [PATCH] Simplified arguments passed. --- src/controllers/base.ts | 11 +++++------ src/controllers/left.ts | 8 ++++---- src/controllers/right.ts | 12 ++++++------ src/controllers/rigplatform.ts | 5 ++--- 4 files changed, 17 insertions(+), 19 deletions(-) diff --git a/src/controllers/base.ts b/src/controllers/base.ts index ebc512d..92a3ab4 100644 --- a/src/controllers/base.ts +++ b/src/controllers/base.ts @@ -44,15 +44,16 @@ export class Base { private clickMenu: ClickMenu; constructor(controller: WebXRInputSource, - scene: Scene, xr: WebXRDefaultExperience, - controllers: Controllers, diagramManager: DiagramManager) { this.logger = log.getLogger('Base'); this.logger.setLevel(this.logger.levels.DEBUG); this.controller = controller; - this.controllers = controllers; - this.scene = scene; + this.controllers = diagramManager.controllers; + this.scene = diagramManager.scene; + this.xr = xr; + this.diagramManager = diagramManager; + this.scene.onBeforeRenderObservable.add(() => { if (this?.grabbedMesh?.physicsBody) { const hk = (this.scene.getPhysicsEngine().getPhysicsPlugin() as HavokPlugin); @@ -72,8 +73,6 @@ export class Base { } }, -1, false, this); - this.xr = xr; - this.diagramManager = diagramManager; this.controller.onMotionControllerInitObservable.add((init) => { this.logger.debug(init.components); diff --git a/src/controllers/left.ts b/src/controllers/left.ts index d83bea2..b6994f3 100644 --- a/src/controllers/left.ts +++ b/src/controllers/left.ts @@ -1,5 +1,4 @@ import { - Scene, TransformNode, Vector2, Vector3, @@ -8,7 +7,7 @@ import { WebXRInputSource } from "@babylonjs/core"; import {Base} from "./base"; -import {ControllerEventType, Controllers} from "./controllers"; +import {ControllerEventType} from "./controllers"; import log from "loglevel"; import {DiagramManager} from "../diagram/diagramManager"; import {RoundButton} from "../objects/roundButton"; @@ -16,8 +15,9 @@ import {RoundButton} from "../objects/roundButton"; const logger = log.getLogger('Left'); export class Left extends Base { constructor(controller: - WebXRInputSource, scene: Scene, xr: WebXRDefaultExperience, diagramManager: DiagramManager, controllers: Controllers) { - super(controller, scene, xr, controllers, diagramManager); + WebXRInputSource, xr: WebXRDefaultExperience, diagramManager: DiagramManager) { + super(controller, xr, diagramManager); + const scene = diagramManager.scene; this.controller.onMotionControllerInitObservable.add((init) => { if (init.components['xr-standard-thumbstick']) { init.components['xr-standard-thumbstick'] diff --git a/src/controllers/right.ts b/src/controllers/right.ts index aedc9ce..0122185 100644 --- a/src/controllers/right.ts +++ b/src/controllers/right.ts @@ -1,6 +1,5 @@ import {Base} from "./base"; import { - Scene, TransformNode, Vector2, Vector3, @@ -8,7 +7,7 @@ import { WebXRDefaultExperience, WebXRInputSource } from "@babylonjs/core"; -import {ControllerEventType, Controllers} from "./controllers"; +import {ControllerEventType} from "./controllers"; import {DiagramManager} from "../diagram/diagramManager"; import {RoundButton} from "../objects/roundButton"; @@ -37,12 +36,13 @@ export class Right extends Base { private endPosition: Vector3 = null; constructor(controller: WebXRInputSource, - scene: Scene, xr: WebXRDefaultExperience, - diagramManager: DiagramManager, - controllers: Controllers, + diagramManager: DiagramManager + ) { - super(controller, scene, xr, controllers, diagramManager); + super(controller, xr, diagramManager); + const scene = diagramManager.scene; + this.controller.onMotionControllerInitObservable.add((init) => { this.initTrigger(init.components['xr-standard-trigger']); if (init.components['a-button']) { diff --git a/src/controllers/rigplatform.ts b/src/controllers/rigplatform.ts index 163d08c..d7f6ff9 100644 --- a/src/controllers/rigplatform.ts +++ b/src/controllers/rigplatform.ts @@ -44,7 +44,6 @@ export class Rigplatform { this.controllers = diagramManager.controllers; this.xr = xr; this.rigMesh = buildRig(this.scene, xr); - this.fixRotation(); this.initializeControllers(); this.registerVelocityObserver(); @@ -160,12 +159,12 @@ export class Rigplatform { switch (source.inputSource.handedness) { case RIGHT: if (!this.rightController) { - this.rightController = new Right(source, this.scene, this.xr, this.diagramManager, this.controllers); + this.rightController = new Right(source, this.xr, this.diagramManager, this.controllers); } break; case LEFT: if (!this.leftController) { - this.leftController = new Left(source, this.scene, this.xr, this.diagramManager, this.controllers); + this.leftController = new Left(source, this.xr, this.diagramManager, this.controllers); } break; }