diff --git a/index.html b/index.html index 9e262fd..c909032 100644 --- a/index.html +++ b/index.html @@ -10,7 +10,7 @@ - + DASFAD diff --git a/package.json b/package.json index 5fa0b52..bca50a6 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "immersive", "private": true, - "version": "0.0.8-33", + "version": "0.0.8-34", "type": "module", "license": "MIT", "engines": { diff --git a/public/assets/dasfad-logo.png b/public/assets/dasfad-logo.png new file mode 100644 index 0000000..57401e4 Binary files /dev/null and b/public/assets/dasfad-logo.png differ diff --git a/src/controllers/functions/buildRig.ts b/src/controllers/functions/buildRig.ts index b12c947..bd579e0 100644 --- a/src/controllers/functions/buildRig.ts +++ b/src/controllers/functions/buildRig.ts @@ -15,6 +15,7 @@ import {DefaultScene} from "../../defaultScene"; export function buildRig(xr: WebXRDefaultExperience): Mesh { const scene = DefaultScene.Scene; const rigMesh = MeshBuilder.CreateCylinder("platform", {diameter: .5, height: .01}, scene); + rigMesh.setAbsolutePosition(new Vector3(0, .01, 5)); const cameratransform = new TransformNode("cameraTransform", scene); cameratransform.parent = rigMesh; xr.baseExperience.onInitialXRPoseSetObservable.add(() => { @@ -31,7 +32,7 @@ export function buildRig(xr: WebXRDefaultExperience): Mesh { } }); - rigMesh.setAbsolutePosition(new Vector3(0, .01, 5)); + rigMesh.isPickable = false; const axis = new AxesViewer(scene, .25); axis.zAxis.rotation.y = Math.PI; diff --git a/src/toolbox/functions/buildMesh.ts b/src/toolbox/functions/buildMesh.ts index 4075fdc..135bc25 100644 --- a/src/toolbox/functions/buildMesh.ts +++ b/src/toolbox/functions/buildMesh.ts @@ -1,5 +1,5 @@ import {ToolType} from "../types/toolType"; -import {AssetContainer, LoadAssetContainerAsync, Mesh, MeshBuilder, SceneLoader} from "@babylonjs/core"; +import {AssetContainer, LoadAssetContainerAsync, Mesh, MeshBuilder} from "@babylonjs/core"; import {DefaultScene} from "../../defaultScene"; import log from "loglevel"; @@ -11,7 +11,7 @@ const detail = { // Cache the loading promise to prevent multiple fetches and handle concurrent requests let personAssetContainerPromise: Promise | null = null; export async function buildMesh(type: ToolType, toolname: string): Promise { - const logger = log.getLogger('buldMesh'); + const logger = log.getLogger('buildMesh'); const scene = DefaultScene.Scene; switch (type) { case ToolType.BOX: @@ -57,6 +57,10 @@ export async function buildMesh(type: ToolType, toolname: string): Promise // Create new instance using BabylonJS's built-in instantiation const entries = container.instantiateModelsToScene(); const mesh = entries.rootNodes[0] as Mesh; + if (!mesh) { + logger.error('error loading mesh'); + return MeshBuilder.CreateBox(toolname, {width: 1, height: 1, depth: 1}); + } mesh.setParent(null); mesh.id = toolname; mesh.name = toolname;