Improve AR menu with multi-dish support, 3D ingredients, and shared sky HDRI.

Fix AR export/visibility per dish, load catalog GLBs at runtime, and replace per-dish HDR with one overcast sky environment for the whole menu.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
pelpanagiotis
2026-06-23 20:42:20 +03:00
parent d632c583d4
commit beb8261554
37 changed files with 855 additions and 61 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View File

@@ -3,7 +3,7 @@
<head>
<link rel="modulepreload" as="script" href="./assets/three@0.169.19.js">
<link rel="modulepreload" as="script" href="./assets/three-examples@0.169.19.js">
<link rel="modulepreload" as="script" href="./assets/needle-engine@5.0.3.js">
<link rel="modulepreload" as="script" href="./assets/needle-engine@5.0.7.js">
<link rel="preload" as="fetch" fetchpriority="low" href="./assets/MenuScene.glb" type="model/gltf+json" crossorigin>
<link rel="preconnect" href="https://fonts.gstatic.com">
@@ -20,9 +20,9 @@
<meta name="og:image:width" content="1080">
<meta name="og:image:height" content="1080">
<meta name="og:title" content="Menu Scene">
<meta name="generator" content="Unity 6000.4.3f1, Needle Engine Integration @5.0.3">
<meta name="needle-engine" content="5.0.3">
<meta name="needle:buildtime" content="2026-04-19T21:14:58.726Z">
<meta name="generator" content="Unity 6000.4.3f1, Needle Engine Integration @5.0.7">
<meta name="needle-engine" content="5.0.7">
<meta name="needle:buildtime" content="2026-06-23T10:34:28.095Z">
<meta charset="UTF-8" />
<link rel="icon" href="./assets/favicon.DtN_Fmav.ico">
@@ -37,36 +37,35 @@
<meta name="robots" content="index,follow">
<meta name="url" content="https://localhost:3000">
<script type="module" crossorigin src="./assets/index-dZODtGdh.js"></script>
<script type="module" crossorigin src="./assets/index-CCjWXS7N.js"></script>
<link rel="modulepreload" crossorigin href="./assets/rolldown-runtime.CYVBeYYp.js">
<link rel="modulepreload" crossorigin href="./assets/three@0.169.19.js">
<link rel="modulepreload" crossorigin href="./assets/materialx.CnHmG--Y.js">
<link rel="modulepreload" crossorigin href="./assets/three-examples@0.169.19.js">
<link rel="modulepreload" crossorigin href="./assets/gltf-progressive.BBJGcb3s.js">
<link rel="modulepreload" crossorigin href="./assets/three-mesh-ui.CgGzZ3ml.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine-ui.D3ZoIJG5.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine-webxr.DiiWSXeh.js">
<link rel="modulepreload" crossorigin href="./assets/three-quarks.DALdLWPD.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine-particles.Ce6eiXqY.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine-ui.B94mye74.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine-webxr.BmCsvEVe.js">
<link rel="modulepreload" crossorigin href="./assets/three-quarks.CKtEpqVy.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine-particles.BlGcRsIu.js">
<link rel="modulepreload" crossorigin href="./assets/postprocessing.Wy71DpiM.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine.extras.dI9yZHT7.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine.extras.B9pwA3ET.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine.extras.D6MD-rCg.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine.extras.CMyNTAvj.js">
<link rel="modulepreload" crossorigin href="./assets/three-mesh-bvh.B-oXEGo2.js">
<link rel="modulepreload" crossorigin href="./assets/needle-engine@5.0.3.js">
<link rel="stylesheet" crossorigin href="./assets/index.2XwOwFJz.css">
<link rel="modulepreload" crossorigin href="./assets/needle-engine@5.0.7.js">
<link rel="stylesheet" crossorigin href="./assets/index.a_pIm1gH.css">
</head>
<body>
<script>/* needle: fix for peerjs */ window.global = window; var parcelRequire;</script>
<needle-engine>
<needle-engine camera-controls="false">
<div id="asset-picker" class="ar desktop">
<div class="asset-picker__inner">
<button type="button" id="asset-picker-prev" aria-label="Previous model">Previous</button>
<span id="asset-picker-label" class="asset-picker__label"></span>
<span id="asset-picker-index" class="asset-picker__index" aria-live="polite"></span>
<button type="button" id="asset-picker-next" aria-label="Next model">Next</button>
<button type="button" id="asset-picker-ar" aria-label="Start augmented reality">View in AR</button>
</div>
</div>
</needle-engine>

Binary file not shown.

View File

@@ -53,7 +53,7 @@ if (!customElements.get(componentName)) {
while(this.basePath.endsWith('/')) {
this.basePath = this.basePath.slice(0, -1);
}
script.src = this.getAttribute('script-src') || `${this.basePath}/assets/index-dZODtGdh.js`;
script.src = this.getAttribute('script-src') || `${this.basePath}/assets/index-CCjWXS7N.js`;
this.shadowRoot.appendChild(script);
this.needleEngine = document.createElement('needle-engine');

File diff suppressed because one or more lines are too long