@volter/editor-game 0.5.67 → 0.5.69
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NOTICE +7 -7
- package/contributions/autoplay.service.ts +1 -1
- package/contributions/build-player.document.tsx +95 -0
- package/contributions/build-profiles.document.tsx +1 -1
- package/contributions/build-progress.status.tsx +2 -2
- package/contributions/build.header.tsx +1 -1
- package/contributions/connection.status.tsx +1 -1
- package/contributions/coverage.service.ts +2 -2
- package/contributions/game-eval.command.ts +6 -6
- package/contributions/gameplay.command.ts +2 -2
- package/contributions/generations.status.tsx +1 -1
- package/contributions/ingest.service.ts +2 -2
- package/contributions/play.command.ts +6 -6
- package/contributions/react/react-inspector.service.ts +1 -1
- package/package.json +9 -8
- package/serving/index.ts +1 -1
- package/src/asset-budget/AssetBudgetPanel.tsx +1 -1
- package/src/asset-budget/asset-budget-model.ts +14 -14
- package/src/asset-budget/optimize-apply.ts +8 -8
- package/src/bridge/call.ts +3 -3
- package/src/bridge/dispatch.ts +12 -12
- package/src/bridge/screenshot.ts +6 -6
- package/src/build/BuildProfilesPanel.tsx +19 -8
- package/src/build/build-session.ts +35 -0
- package/src/canvas/canvas-board/CanvasBoardDocument.tsx +78 -5
- package/src/canvas/canvas-board/canvas-component-board.ts +1 -1
- package/src/canvas/canvas-design-mount.ts +1 -1
- package/src/coverage/live-project-verbs.ts +3 -3
- package/src/coverage/native-system-coverage.ts +3 -3
- package/src/coverage/root-coverage.ts +2 -2
- package/src/coverage/session-coverage.ts +2 -2
- package/src/design-system-stories/InspectorNarrowBodies.stories.tsx +2 -2
- package/src/game-document/DevicePresetPicker.tsx +6 -6
- package/src/game-document/GameCaptureFrameButton.tsx +1 -1
- package/src/game-document/GameDocument.tsx +2 -2
- package/src/game-document/GamePanel.tsx +9 -9
- package/src/game-document/InstanceInspectorPicker.tsx +1 -1
- package/src/game-document/device-preview.ts +4 -4
- package/src/game-document/physics-debug.ts +2 -2
- package/src/generation/GenerationActivity.tsx +22 -22
- package/src/generation/GenerationGallery.css +79 -79
- package/src/generation/generation-documents.tsx +25 -25
- package/src/generation/generation-presentation.ts +1 -1
- package/src/host/adapter-reach.ts +1 -1
- package/src/host/adapter-runtime-bindings.ts +5 -5
- package/src/host/after-paint.ts +3 -3
- package/src/host/api/configurations.ts +1 -1
- package/src/host/authoring/canvas-runtime-recognition.ts +2 -2
- package/src/host/authoring/contract-hierarchy-authoring.ts +6 -6
- package/src/host/authoring/contract-scenes-stories.ts +5 -5
- package/src/host/authoring/ingest-data-writer.ts +1 -1
- package/src/host/authoring/ingest-source-persistence.ts +2 -2
- package/src/host/authoring/mount-isolated-pixi-screen.ts +1 -1
- package/src/host/authoring/pixi-authoring-adapter.ts +206 -28
- package/src/host/authoring/pixi-creatable-kinds.ts +80 -0
- package/src/host/authoring/pixi-live-write-target.ts +6 -5
- package/src/host/authoring/pixi-source-write-target.ts +118 -20
- package/src/host/authoring/pixi-structure-history.ts +3 -3
- package/src/host/binding-resolver.ts +6 -6
- package/src/host/browser-transpile.ts +10 -10
- package/src/host/canvas-preview-frames.ts +1 -1
- package/src/host/components/CameraAuthoringOverlay.tsx +14 -14
- package/src/host/components/HeaderTelemetry.tsx +11 -11
- package/src/host/components/PixiIsolationSceneContent.tsx +3 -3
- package/src/host/components/ResolutionPicker.tsx +4 -4
- package/src/host/components/scene-document.tsx +3 -3
- package/src/host/components/world-root-stage-binding.tsx +1 -1
- package/src/host/components/world-root-stage.ts +1 -1
- package/src/host/coverage/authoring-read-probe.ts +1 -1
- package/src/host/coverage/capability-coverage.ts +22 -22
- package/src/host/coverage/game-contract-seam-evidence.ts +8 -8
- package/src/host/coverage/project-verb-coverage.ts +1 -1
- package/src/host/coverage/system-adapter-coverage.ts +19 -6
- package/src/host/game-location-guard.ts +3 -3
- package/src/host/game-module-access.ts +6 -6
- package/src/host/game-realm-page.ts +3 -3
- package/src/host/game-realm-reclaim.ts +1 -1
- package/src/host/gameplay-recording.ts +5 -5
- package/src/host/gated-globals.ts +13 -13
- package/src/host/ingest/registry.ts +14 -14
- package/src/host/play-control-hook.ts +1 -1
- package/src/host/playwright-shim.ts +2 -2
- package/src/host/projection/pixi.ts +2 -2
- package/src/host/react-mount-runtime.ts +1 -1
- package/src/host/roots/canvas-root.tsx +13 -1
- package/src/host/roots/r3f-root.tsx +1 -1
- package/src/host/scene-view-drawability.ts +1 -1
- package/src/host/sdk/tools.ts +1 -1
- package/src/host/served-bundle-runtime-modules.ts +2 -0
- package/src/host/staged-projects.ts +1 -1
- package/src/host/stories/story-pixi-preview.ts +1 -1
- package/src/host/stories/story-three-preview.ts +1 -1
- package/src/host/three-ingest-runtime.ts +1 -1
- package/src/ingest/active-ingest.ts +1 -1
- package/src/ingest/authoring/ingest-dom-surface-authoring.ts +4 -4
- package/src/ingest/authoring/ingest-root-adapter.ts +11 -11
- package/src/ingest/capture-wait-report.ts +4 -4
- package/src/ingest/discovery-public-ingest.ts +4 -4
- package/src/ingest/dom-stub-mark.ts +1 -1
- package/src/ingest/entry-load.ts +1 -1
- package/src/ingest/game-contract-realm.ts +3 -3
- package/src/ingest/game-pointer-lock.ts +1 -1
- package/src/ingest/ingest-canvas-scene-document.tsx +3 -3
- package/src/ingest/ingest-evidence-hook.ts +6 -6
- package/src/ingest/ingest-frame-snapshot.ts +2 -2
- package/src/ingest/ingest-play-commands.ts +1 -1
- package/src/ingest/ingest-play-control.ts +11 -11
- package/src/ingest/ingest-render-debug.ts +5 -5
- package/src/ingest/ingest-siblings.ts +3 -3
- package/src/ingest/module-mode.ts +2 -2
- package/src/ingest/mount-canvas-ingest-root.ts +10 -10
- package/src/ingest/mount-coverage.ts +3 -3
- package/src/ingest/mount-dom-ingest-root.ts +7 -7
- package/src/ingest/mount-ingest-root.ts +10 -10
- package/src/ingest/mount-three-ingest-root.ts +5 -5
- package/src/ingest/resolve-three.ts +2 -2
- package/src/ingest/served-bundle.ts +6 -6
- package/src/ingest/served-html-boot.ts +8 -8
- package/src/ingest/surface-dom.ts +9 -9
- package/src/ingest/surface-three.ts +1 -1
- package/src/ingest/types.ts +1 -1
- package/src/ingest/unmount-ingest-root.ts +3 -3
- package/src/network/NetworkInspectorPanel.tsx +521 -54
- package/src/network/network-inspector-model.ts +6 -0
- package/src/play/play-boot-stall.ts +1 -1
- package/src/play/play-mode.ts +31 -30
- package/src/play/play-recording.ts +12 -12
- package/src/play-bar/PlayBar.tsx +8 -8
- package/src/play-bar/PlayerCountPicker.tsx +3 -3
- package/src/profiler/FrameDebuggerPanel.tsx +2 -2
- package/src/profiler/PerformancePanel.tsx +4 -4
- package/src/react/design-time-react-mount.ts +5 -5
- package/src/react/dom-authoring-adapter.ts +3 -3
- package/src/react/react-inspector-section.tsx +2 -2
- package/src/react/react-world-authoring-adapter.ts +20 -20
- package/src/react/story-documents/story-documents.tsx +4 -4
- package/src/react/ui-component-board.ts +1 -1
- package/src/runtime/adapter/audio-meter.ts +1 -1
- package/src/runtime/adapter/ingest/contract-debug-adapter.ts +4 -4
- package/src/runtime/adapter/ingest/contract-system-adapters.ts +9 -9
- package/src/runtime/adapter/ingest/merge-debug-adapters.ts +2 -2
- package/src/runtime/adapter/ingest/observation-debug-adapter.ts +1 -1
- package/src/runtime/adapter/native-debug-module.ts +5 -5
- package/src/runtime/audio/pose-guard.ts +1 -1
- package/src/runtime/core/game-scoped-slot.ts +1 -1
- package/src/runtime/create-runtime.ts +15 -15
- package/src/runtime/debug-bridge.ts +25 -25
- package/src/runtime/debug-registry.ts +17 -17
- package/src/runtime/dev/instruments.ts +1 -1
- package/src/runtime/dev/performance-profiler.ts +2 -2
- package/src/runtime/dev/register-render-vitals.ts +2 -2
- package/src/runtime/dev/static-batch-advisor.ts +3 -3
- package/src/runtime/dev-build.ts +3 -3
- package/src/runtime/game.ts +5 -5
- package/src/runtime/input-router.ts +24 -11
- package/src/runtime/mount-manifest.ts +9 -9
- package/src/runtime/pixi/authoring.ts +1 -1
- package/src/runtime/pixi/ingest.ts +1 -1
- package/src/runtime/presentation.ts +1 -1
- package/src/runtime/render-control.ts +21 -21
- package/src/runtime/render-seed.ts +3 -3
- package/src/runtime/run-ticks-settled.ts +1 -1
- package/src/services/game-audio.ts +3 -3
- package/src/services/game-network.ts +125 -15
- package/src/three/authoring/model-asset-inspector-section.css +15 -15
- package/src/three/authoring/model-asset-inspector-section.tsx +7 -7
- package/src/three/authoring/r3f-design-session.ts +10 -10
- package/src/three/authoring/r3f-source-authoring-adapter.ts +5 -5
- package/src/three/authoring/three-authoring-adapter.ts +5 -4
- package/src/three/authoring/typed-three-inspector.ts +1 -1
- package/src/three/story-documents/three-story-documents.tsx +3 -3
- package/src/three/three-board/board-scene.ts +9 -9
- package/src/three/three-board/three-component-board.ts +1 -1
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
*
|
|
16
16
|
* `projectRoot` can't come from `import.meta.glob`/`import.meta.url` alone
|
|
17
17
|
* (those resolve to HTTP URLs in the browser, not filesystem paths) — it is
|
|
18
|
-
* built from `
|
|
19
|
-
* `server/dev.ts`, mirroring the existing `
|
|
18
|
+
* built from `__VOLTER_ENGINE_ROOT__` (a dev-server-only Vite `define`,
|
|
19
|
+
* `server/dev.ts`, mirroring the existing `__VOLTER_PROJECT_PATH__` define) plus
|
|
20
20
|
* this folder's FIXED, known-at-build-time relative offset. `browser`
|
|
21
|
-
* editor-mode builds (no dev server) never define `
|
|
21
|
+
* editor-mode builds (no dev server) never define `__VOLTER_ENGINE_ROOT__` —
|
|
22
22
|
* callers must check `getEditorMode() !== 'browser'` first (mirrors every other
|
|
23
23
|
* `/@fs/`-dependent ingest route's guard, e.g. `ingest/mount-ingest-root.ts`'s
|
|
24
24
|
* `tryManifestIngestRoute`).
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
import { type IngestEntry, ingestEntriesOnSurface } from '../host/ingest/registry';
|
|
28
28
|
import type { ResolvedGameManifest } from '@volter/editor-project/manifest/load';
|
|
29
29
|
|
|
30
|
-
declare const
|
|
30
|
+
declare const __VOLTER_ENGINE_ROOT__: string;
|
|
31
31
|
|
|
32
32
|
/** A discovered `dom`-surface ingest fixture: its parsed manifest (exactly one
|
|
33
33
|
* ingest root) plus that root's id for convenience. */
|
|
@@ -72,13 +72,13 @@ export function getIngestGameDom(folderId: string): IngestGameDom | undefined {
|
|
|
72
72
|
/**
|
|
73
73
|
* The absolute on-disk `projectRoot` for a discovered dom ingest fixture's
|
|
74
74
|
* folder — what `resolveRootBinding`/`resolveAllRoots` need to resolve its
|
|
75
|
-
* `entry`. `undefined` when `
|
|
75
|
+
* `entry`. `undefined` when `__VOLTER_ENGINE_ROOT__` isn't defined (browser-mode
|
|
76
76
|
* static build — no dev server, no `/@fs/` route to resolve through anyway).
|
|
77
77
|
*/
|
|
78
78
|
export function ingestGameDomProjectRoot(folderId: string): string | undefined {
|
|
79
|
-
if (typeof
|
|
80
|
-
const root =
|
|
81
|
-
?
|
|
82
|
-
:
|
|
79
|
+
if (typeof __VOLTER_ENGINE_ROOT__ !== 'string' || !__VOLTER_ENGINE_ROOT__) return undefined;
|
|
80
|
+
const root = __VOLTER_ENGINE_ROOT__.endsWith('/')
|
|
81
|
+
? __VOLTER_ENGINE_ROOT__.slice(0, -1)
|
|
82
|
+
: __VOLTER_ENGINE_ROOT__;
|
|
83
83
|
return `${root}/packages/editor/src/ingest/games/${folderId}`;
|
|
84
84
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* `ingest/discovery.ts`, which owned its own glob of `games/*`).
|
|
4
4
|
*
|
|
5
5
|
* Discovery is no longer here: `registry.ts` does the one glob over
|
|
6
|
-
* `./games/*\/
|
|
6
|
+
* `./games/*\/volter.project.json` and hands back parsed entries. This module's only
|
|
7
7
|
* job is turning a `three`-surface entry into the `IngestGame` descriptor
|
|
8
8
|
* `ingest/mount-ingest-root.ts` mounts — which is genuinely per-surface work, and is why the
|
|
9
9
|
* builders stayed split when discovery was unified.
|
package/src/ingest/types.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* It is the common contract every discovery frontend builds:
|
|
7
7
|
* `ingest/surface-three.ts`'s glob-based discovery of the in-tree fixture games
|
|
8
|
-
* under `ingest/games/<id>/
|
|
8
|
+
* under `ingest/games/<id>/volter.project.json`, `binding-resolver.ts`'s
|
|
9
9
|
* `resolveIngestDescriptor` (an arbitrary project folder's manifest, mounted
|
|
10
10
|
* through the dev server), and `ingest/discovery-public-ingest.ts` (a game
|
|
11
11
|
* served out of the repo's public dir, by id).
|
|
@@ -131,7 +131,7 @@ function disposeThreejsSession(s: IngestSession): void {
|
|
|
131
131
|
}
|
|
132
132
|
|
|
133
133
|
reclaimGameRealm('', 'The ingested game');
|
|
134
|
-
clearIngestHook('
|
|
134
|
+
clearIngestHook('__volterIngest');
|
|
135
135
|
editorConsole.log('Ingest root unmounted', 'ingest');
|
|
136
136
|
}
|
|
137
137
|
|
|
@@ -160,7 +160,7 @@ function disposePixiSession(s: IngestSession2D): void {
|
|
|
160
160
|
/* ignore */
|
|
161
161
|
}
|
|
162
162
|
reclaimGameRealm('', 'The ingested canvas game');
|
|
163
|
-
clearIngestHook('
|
|
163
|
+
clearIngestHook('__volterIngest2D');
|
|
164
164
|
editorConsole.log('canvas ingest root unmounted', 'ingest');
|
|
165
165
|
}
|
|
166
166
|
|
|
@@ -184,7 +184,7 @@ function disposeReactSession(s: IngestSessionReact): void {
|
|
|
184
184
|
/* ignore */
|
|
185
185
|
}
|
|
186
186
|
reclaimGameRealm('', 'The ingested DOM game');
|
|
187
|
-
clearIngestHook('
|
|
187
|
+
clearIngestHook('__volterIngestReact');
|
|
188
188
|
editorConsole.log('DOM ingest root unmounted', 'ingest');
|
|
189
189
|
}
|
|
190
190
|
|