Changed Node Image for Coolify
This commit is contained in:
BIN
Needle/MenuScene/dist/assets/MenuScene.glb
vendored
BIN
Needle/MenuScene/dist/assets/MenuScene.glb
vendored
Binary file not shown.
BIN
Needle/MenuScene/dist/include/poster.webp
vendored
BIN
Needle/MenuScene/dist/include/poster.webp
vendored
Binary file not shown.
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 10 KiB |
Binary file not shown.
@@ -19,7 +19,7 @@ function initAssetPicker(): void {
|
||||
const labelEl = document.querySelector("#asset-picker-label");
|
||||
const indexEl = document.querySelector("#asset-picker-index");
|
||||
|
||||
if (!needle || !prev || !next || !arBtn || !labelEl || !indexEl) return;
|
||||
if (!needle || !prev || !next || !labelEl || !indexEl) return;
|
||||
|
||||
let menuController: MenuController | null = null;
|
||||
let immersiveSessionActive = false;
|
||||
@@ -43,10 +43,12 @@ function initAssetPicker(): void {
|
||||
prev.disabled = !canNav;
|
||||
next.disabled = !canNav;
|
||||
|
||||
arBtn.disabled =
|
||||
!arSupported ||
|
||||
arStarting ||
|
||||
immersiveSessionActive;
|
||||
if (arBtn) {
|
||||
arBtn.disabled =
|
||||
!arSupported ||
|
||||
arStarting ||
|
||||
immersiveSessionActive;
|
||||
}
|
||||
};
|
||||
|
||||
const bindMenuController = async (): Promise<void> => {
|
||||
@@ -88,7 +90,7 @@ function initAssetPicker(): void {
|
||||
|
||||
prev.addEventListener("click", () => requestNavigate(-1));
|
||||
next.addEventListener("click", () => requestNavigate(1));
|
||||
arBtn.addEventListener("click", () => void startAr());
|
||||
arBtn?.addEventListener("click", () => void startAr());
|
||||
|
||||
needle.addEventListener("enter-ar", () => {
|
||||
immersiveSessionActive = true;
|
||||
|
||||
27
Needle/MenuScene/src/disableCameraControls.ts
Normal file
27
Needle/MenuScene/src/disableCameraControls.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { onStart, OrbitControls } from "@needle-tools/engine";
|
||||
|
||||
/**
|
||||
* Turn off orbit / pan / zoom from the exported scene (Main Camera often has {@link OrbitControls}).
|
||||
* `<needle-engine camera-controls="false">` only skips auto-injected controls; Unity-serialized ones
|
||||
* must be disabled in code.
|
||||
*/
|
||||
onStart((context) => {
|
||||
const oc = context.scene.getComponentInChildren(OrbitControls);
|
||||
if (!oc) return;
|
||||
|
||||
oc.enableRotate = false;
|
||||
oc.enablePan = false;
|
||||
oc.enableZoom = false;
|
||||
oc.enableKeys = false;
|
||||
oc.autoRotate = false;
|
||||
oc.middleClickToFocus = false;
|
||||
oc.doubleClickToFocus = false;
|
||||
oc.clickBackgroundToFitScene = 0;
|
||||
|
||||
const three = oc.controls;
|
||||
if (three) {
|
||||
three.enabled = false;
|
||||
}
|
||||
|
||||
oc.enabled = false;
|
||||
});
|
||||
@@ -19,7 +19,7 @@ document.addEventListener("DOMContentLoaded", () =>
|
||||
const needleEngine = document.querySelector("needle-engine");
|
||||
if(needleEngine && needleEngine.getAttribute("src") === null)
|
||||
{
|
||||
needleEngine.setAttribute("hash", "1776659726595");
|
||||
needleEngine.setAttribute("hash", "1776799769658");
|
||||
needleEngine.setAttribute("src", JSON.stringify(needle_exported_files));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import("@needle-tools/engine") /* async import of needle engine */;
|
||||
import "./disableCameraControls";
|
||||
import "./dishMeshFallback";
|
||||
import "./enableXR";
|
||||
import "./assetPicker";
|
||||
@@ -26,13 +26,16 @@ export class MenuController extends Behaviour {
|
||||
@serializable(Object3D)
|
||||
webXROrigin?: Object3D;
|
||||
|
||||
/** Local-space vertical bob amplitude (meters). Set to 0 to disable. */
|
||||
/**
|
||||
* Local-space vertical bob amplitude (meters). Set to 0 to disable.
|
||||
* Peak-to-peak motion is 2× this value; 0.004 ≈ 8 mm total — subtle but visible.
|
||||
*/
|
||||
@serializable()
|
||||
dishBobAmplitude = 0.05;
|
||||
dishBobAmplitude = 0.004;
|
||||
|
||||
/** Bob angular speed (radians per second). */
|
||||
@serializable()
|
||||
dishBobSpeed = 2.5;
|
||||
dishBobSpeed = 1.0;
|
||||
|
||||
private usdzExporter?: USDZExporter;
|
||||
|
||||
|
||||
@@ -63,16 +63,6 @@ needle-engine {
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
#asset-picker #asset-picker-ar {
|
||||
background: #34c759;
|
||||
color: #0a0a0c;
|
||||
}
|
||||
|
||||
#asset-picker #asset-picker-ar:disabled {
|
||||
background: #3a3a3e;
|
||||
color: rgba(255, 255, 255, 0.5);
|
||||
}
|
||||
|
||||
#asset-picker .asset-picker__label {
|
||||
flex: 1;
|
||||
min-width: 0;
|
||||
|
||||
Reference in New Issue
Block a user