b85fe6ae607d63a83fe57f4a0ac6ddb37d685b8355207afc5a46ce2f37d069ae.json 10 KB

1
  1. {"ast":null,"code":"import { WebXRAbstractMotionController } from \"./webXRAbstractMotionController.js\";\nimport { WebXRMotionControllerManager } from \"./webXRMotionControllerManager.js\";\n/**\n * A generic hand controller class that supports select and a secondary grasp\n */\nexport class WebXRGenericHandController extends WebXRAbstractMotionController {\n /**\n * Create a new hand controller object, without loading a controller model\n * @param scene the scene to use to create this controller\n * @param gamepadObject the corresponding gamepad object\n * @param handedness the handedness of the controller\n */\n constructor(scene, gamepadObject, handedness) {\n // Don't load the controller model - for now, hands have no real model.\n super(scene, GenericHandSelectGraspProfile[handedness], gamepadObject, handedness, true);\n this.profileId = \"generic-hand-select-grasp\";\n }\n _getFilenameAndPath() {\n return {\n filename: \"generic.babylon\",\n path: \"https://controllers.babylonjs.com/generic/\"\n };\n }\n _getModelLoadingConstraints() {\n return true;\n }\n _processLoadedModel(_meshes) {\n // no-op\n }\n _setRootMesh(meshes) {\n // no-op\n }\n _updateModel() {\n // no-op\n }\n}\n// register the profiles\nWebXRMotionControllerManager.RegisterController(\"generic-hand-select-grasp\", (xrInput, scene) => {\n return new WebXRGenericHandController(scene, xrInput.gamepad, xrInput.handedness);\n});\n// https://github.com/immersive-web/webxr-input-profiles/blob/main/packages/registry/profiles/generic/generic-hand-select-grasp.json\nconst GenericHandSelectGraspProfile = {\n left: {\n selectComponentId: \"xr-standard-trigger\",\n components: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n \"xr-standard-trigger\": {\n type: \"trigger\",\n gamepadIndices: {\n button: 0\n },\n rootNodeName: \"xr-standard-trigger\",\n visualResponses: {}\n },\n grasp: {\n type: \"trigger\",\n gamepadIndices: {\n button: 4\n },\n rootNodeName: \"grasp\",\n visualResponses: {}\n }\n },\n gamepadMapping: \"xr-standard\",\n rootNodeName: \"generic-hand-select-grasp-left\",\n assetPath: \"left.glb\"\n },\n right: {\n selectComponentId: \"xr-standard-trigger\",\n components: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n \"xr-standard-trigger\": {\n type: \"trigger\",\n gamepadIndices: {\n button: 0\n },\n rootNodeName: \"xr-standard-trigger\",\n visualResponses: {}\n },\n grasp: {\n type: \"trigger\",\n gamepadIndices: {\n button: 4\n },\n rootNodeName: \"grasp\",\n visualResponses: {}\n }\n },\n gamepadMapping: \"xr-standard\",\n rootNodeName: \"generic-hand-select-grasp-right\",\n assetPath: \"right.glb\"\n },\n none: {\n selectComponentId: \"xr-standard-trigger\",\n components: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n \"xr-standard-trigger\": {\n type: \"trigger\",\n gamepadIndices: {\n button: 0\n },\n rootNodeName: \"xr-standard-trigger\",\n visualResponses: {}\n },\n grasp: {\n type: \"trigger\",\n gamepadIndices: {\n button: 4\n },\n rootNodeName: \"grasp\",\n visualResponses: {}\n }\n },\n gamepadMapping: \"xr-standard\",\n rootNodeName: \"generic-hand-select-grasp-none\",\n assetPath: \"none.glb\"\n }\n};","map":{"version":3,"names":["WebXRAbstractMotionController","WebXRMotionControllerManager","WebXRGenericHandController","constructor","scene","gamepadObject","handedness","GenericHandSelectGraspProfile","profileId","_getFilenameAndPath","filename","path","_getModelLoadingConstraints","_processLoadedModel","_meshes","_setRootMesh","meshes","_updateModel","RegisterController","xrInput","gamepad","left","selectComponentId","components","type","gamepadIndices","button","rootNodeName","visualResponses","grasp","gamepadMapping","assetPath","right","none"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/@babylonjs/core/XR/motionController/webXRGenericHandController.js"],"sourcesContent":["import { WebXRAbstractMotionController } from \"./webXRAbstractMotionController.js\";\nimport { WebXRMotionControllerManager } from \"./webXRMotionControllerManager.js\";\n/**\n * A generic hand controller class that supports select and a secondary grasp\n */\nexport class WebXRGenericHandController extends WebXRAbstractMotionController {\n /**\n * Create a new hand controller object, without loading a controller model\n * @param scene the scene to use to create this controller\n * @param gamepadObject the corresponding gamepad object\n * @param handedness the handedness of the controller\n */\n constructor(scene, gamepadObject, handedness) {\n // Don't load the controller model - for now, hands have no real model.\n super(scene, GenericHandSelectGraspProfile[handedness], gamepadObject, handedness, true);\n this.profileId = \"generic-hand-select-grasp\";\n }\n _getFilenameAndPath() {\n return {\n filename: \"generic.babylon\",\n path: \"https://controllers.babylonjs.com/generic/\",\n };\n }\n _getModelLoadingConstraints() {\n return true;\n }\n _processLoadedModel(_meshes) {\n // no-op\n }\n _setRootMesh(meshes) {\n // no-op\n }\n _updateModel() {\n // no-op\n }\n}\n// register the profiles\nWebXRMotionControllerManager.RegisterController(\"generic-hand-select-grasp\", (xrInput, scene) => {\n return new WebXRGenericHandController(scene, xrInput.gamepad, xrInput.handedness);\n});\n// https://github.com/immersive-web/webxr-input-profiles/blob/main/packages/registry/profiles/generic/generic-hand-select-grasp.json\nconst GenericHandSelectGraspProfile = {\n left: {\n selectComponentId: \"xr-standard-trigger\",\n components: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n \"xr-standard-trigger\": {\n type: \"trigger\",\n gamepadIndices: {\n button: 0,\n },\n rootNodeName: \"xr-standard-trigger\",\n visualResponses: {},\n },\n grasp: {\n type: \"trigger\",\n gamepadIndices: {\n button: 4,\n },\n rootNodeName: \"grasp\",\n visualResponses: {},\n },\n },\n gamepadMapping: \"xr-standard\",\n rootNodeName: \"generic-hand-select-grasp-left\",\n assetPath: \"left.glb\",\n },\n right: {\n selectComponentId: \"xr-standard-trigger\",\n components: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n \"xr-standard-trigger\": {\n type: \"trigger\",\n gamepadIndices: {\n button: 0,\n },\n rootNodeName: \"xr-standard-trigger\",\n visualResponses: {},\n },\n grasp: {\n type: \"trigger\",\n gamepadIndices: {\n button: 4,\n },\n rootNodeName: \"grasp\",\n visualResponses: {},\n },\n },\n gamepadMapping: \"xr-standard\",\n rootNodeName: \"generic-hand-select-grasp-right\",\n assetPath: \"right.glb\",\n },\n none: {\n selectComponentId: \"xr-standard-trigger\",\n components: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n \"xr-standard-trigger\": {\n type: \"trigger\",\n gamepadIndices: {\n button: 0,\n },\n rootNodeName: \"xr-standard-trigger\",\n visualResponses: {},\n },\n grasp: {\n type: \"trigger\",\n gamepadIndices: {\n button: 4,\n },\n rootNodeName: \"grasp\",\n visualResponses: {},\n },\n },\n gamepadMapping: \"xr-standard\",\n rootNodeName: \"generic-hand-select-grasp-none\",\n assetPath: \"none.glb\",\n },\n};\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}