@fps-games/editor 0.1.8-beta.1 → 0.1.8-beta.2

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.
Files changed (38) hide show
  1. package/dist/build-info.json +13 -13
  2. package/dist/playable-babylon-facade.d.ts +2 -2
  3. package/dist/playable-babylon-facade.d.ts.map +1 -1
  4. package/dist/playable-babylon-facade.js +1 -1
  5. package/dist/playable-babylon-facade.js.map +1 -1
  6. package/dist/playable-sdk.d.ts +2 -2
  7. package/dist/playable-sdk.d.ts.map +1 -1
  8. package/dist/playable-sdk.js +1 -1
  9. package/dist/playable-sdk.js.map +1 -1
  10. package/node_modules/@fps-games/babylon-renderer/dist/index.d.ts +1 -0
  11. package/node_modules/@fps-games/babylon-renderer/dist/index.d.ts.map +1 -1
  12. package/node_modules/@fps-games/babylon-renderer/dist/index.js +1 -0
  13. package/node_modules/@fps-games/babylon-renderer/dist/index.js.map +1 -1
  14. package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.d.ts +83 -0
  15. package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.d.ts.map +1 -0
  16. package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.js +561 -0
  17. package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.js.map +1 -0
  18. package/node_modules/@fps-games/babylon-renderer/package.json +1 -1
  19. package/node_modules/@fps-games/editor-babylon/package.json +5 -5
  20. package/node_modules/@fps-games/editor-browser/package.json +3 -3
  21. package/node_modules/@fps-games/editor-core/package.json +2 -2
  22. package/node_modules/@fps-games/editor-forge-play/package.json +2 -2
  23. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts.map +1 -1
  24. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js +9 -5
  25. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js.map +1 -1
  26. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.d.ts +1 -0
  27. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.d.ts.map +1 -1
  28. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.js +1 -0
  29. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.js.map +1 -1
  30. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/runtime.d.ts +62 -0
  31. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/runtime.d.ts.map +1 -0
  32. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/runtime.js +410 -0
  33. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/runtime.js.map +1 -0
  34. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/types.d.ts +1 -1
  35. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/types.d.ts.map +1 -1
  36. package/node_modules/@fps-games/editor-playable-sdk/package.json +3 -3
  37. package/node_modules/@fps-games/editor-protocol/package.json +1 -1
  38. package/package.json +8 -8
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fps-games/editor-forge-play",
3
- "version": "0.1.8-beta.1",
3
+ "version": "0.1.8-beta.2",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "description": "Forge Play bridge adapter for fps-game-editor.",
@@ -14,6 +14,6 @@
14
14
  }
15
15
  },
16
16
  "dependencies": {
17
- "@fps-games/editor-protocol": "0.1.8-beta.1"
17
+ "@fps-games/editor-protocol": "0.1.8-beta.2"
18
18
  }
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"forge-play.d.ts","sourceRoot":"","sources":["../../src/local-harness/forge-play.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,qCAAqC,EACrC,iCAAiC,EACjC,wCAAwC,EAIxC,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,uCAAuC,EACxC,MAAM,oBAAoB,CAAC;AAQ5B,eAAO,MAAM,iCAAiC,2BAA2B,CAAC;AAE1E,eAAO,MAAM,gCAAgC;;;CAGnC,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;;;;;;;;;CAW9B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;;;CAW5B,CAAC;AAEX,eAAO,MAAM,iCAAiC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAW/E,CAAC;AAEF,eAAO,MAAM,mCAAmC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAWtE,CAAC;AAEF,eAAO,MAAM,0CAA0C,aAKrD,CAAC;AAEH,eAAO,MAAM,oCAAoC,aAG/C,CAAC;AAEH,eAAO,MAAM,yCAAyC,+BAA+B,CAAC;AACtF,eAAO,MAAM,sCAAsC,wCAAwC,CAAC;AAC5F,eAAO,MAAM,mCAAmC,iCAAiC,CAAC;AAElF,wBAAgB,gCAAgC,IAAI,0BAA0B,CAK7E;AAED,wBAAgB,qCAAqC,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAGnF;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAInG;AAED,wBAAgB,4CAA4C,CAC1D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,wCAAwC,CAK1C;AAED,wBAAgB,0CAA0C,CACxD,SAAS,EAAE,iCAAiC,GAC3C,MAAM,CAIR;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,IAAI,CAAC,2BAA2B,EAAE,QAAQ,CAAC,EACvD,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACpC,IAAI,CAcN;AAQD,wBAAgB,uCAAuC,CACrD,OAAO,EAAE,uCAAuC,GAC/C,MAAM,IAAI,CAkEZ;AAED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,qCAAqC,GAC7C,2BAA2B,CAoV7B"}
1
+ {"version":3,"file":"forge-play.d.ts","sourceRoot":"","sources":["../../src/local-harness/forge-play.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,qCAAqC,EACrC,iCAAiC,EACjC,wCAAwC,EAIxC,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,uCAAuC,EACxC,MAAM,oBAAoB,CAAC;AAQ5B,eAAO,MAAM,iCAAiC,2BAA2B,CAAC;AAE1E,eAAO,MAAM,gCAAgC;;;CAGnC,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;;;;;;;;;CAW9B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;;;CAW5B,CAAC;AAEX,eAAO,MAAM,iCAAiC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAW/E,CAAC;AAEF,eAAO,MAAM,mCAAmC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAWtE,CAAC;AAEF,eAAO,MAAM,0CAA0C,aAKrD,CAAC;AAEH,eAAO,MAAM,oCAAoC,aAG/C,CAAC;AAEH,eAAO,MAAM,yCAAyC,+BAA+B,CAAC;AACtF,eAAO,MAAM,sCAAsC,wCAAwC,CAAC;AAC5F,eAAO,MAAM,mCAAmC,iCAAiC,CAAC;AAElF,wBAAgB,gCAAgC,IAAI,0BAA0B,CAK7E;AAED,wBAAgB,qCAAqC,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAGnF;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAInG;AAED,wBAAgB,4CAA4C,CAC1D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,wCAAwC,CAK1C;AAED,wBAAgB,0CAA0C,CACxD,SAAS,EAAE,iCAAiC,GAC3C,MAAM,CAIR;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,IAAI,CAAC,2BAA2B,EAAE,QAAQ,CAAC,EACvD,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACpC,IAAI,CAcN;AAQD,wBAAgB,uCAAuC,CACrD,OAAO,EAAE,uCAAuC,GAC/C,MAAM,IAAI,CAkEZ;AAED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,qCAAqC,GAC7C,2BAA2B,CAuV7B"}
@@ -363,14 +363,18 @@ export function installPlayableForgePlayModeBridge(options) {
363
363
  await inFlight;
364
364
  inFlight = (async () => {
365
365
  const originalMode = currentMode;
366
- const saved = await saveScene('forge-play-document-commit');
367
- if (!saved) {
368
- postEvent(PLAYABLE_FORGE_PLAY_EVENT.MODE_CHANGE, { mode: originalMode });
369
- return;
370
- }
366
+ // Platform persistence happens between document.export and document.commit.
367
+ // After a prepared export, commit only acknowledges that saved transaction.
371
368
  if (saveState.preparedRevision > 0) {
372
369
  saveState.committedRevision = saveState.preparedRevision;
373
370
  }
371
+ else {
372
+ const saved = await saveScene('forge-play-document-commit');
373
+ if (!saved) {
374
+ postEvent(PLAYABLE_FORGE_PLAY_EVENT.MODE_CHANGE, { mode: originalMode });
375
+ return;
376
+ }
377
+ }
374
378
  })();
375
379
  try {
376
380
  await inFlight;
@@ -1 +1 @@
1
- {"version":3,"file":"forge-play.js","sourceRoot":"","sources":["../../src/local-harness/forge-play.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"forge-play.js","sourceRoot":"","sources":["../../src/local-harness/forge-play.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,5 @@ export * from './types';
2
2
  export * from './quality';
3
3
  export * from './legacy';
4
4
  export * from './resolver';
5
+ export * from './runtime';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shadow-system/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shadow-system/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
@@ -2,4 +2,5 @@ export * from './types.js';
2
2
  export * from './quality.js';
3
3
  export * from './legacy.js';
4
4
  export * from './resolver.js';
5
+ export * from './runtime.js';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shadow-system/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shadow-system/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
@@ -0,0 +1,62 @@
1
+ import type { EditorSceneShadowMode } from '../document/types';
2
+ import type { EditorShadowDiagnostic, EditorShadowPlanBackend, EditorShadowResolvedMode, EditorShadowResolvedParams, EditorShadowResolvedPlan, EditorShadowResolvedQuality, EditorShadowSettings } from './types';
3
+ export type EditorShadowRuntimeMaterialLightingModel = 'lit' | 'unlit' | 'unknown';
4
+ export interface EditorShadowRuntimeTarget {
5
+ id: string;
6
+ name?: string;
7
+ nodeIds?: readonly string[];
8
+ rootNodeId?: string;
9
+ active?: boolean;
10
+ visible?: boolean;
11
+ shadowMode?: EditorSceneShadowMode | null;
12
+ shadow?: EditorShadowSettings | null;
13
+ shadowPlan?: unknown;
14
+ materialLightingModel?: EditorShadowRuntimeMaterialLightingModel;
15
+ receiveDynamicShadows?: boolean;
16
+ metadata?: Record<string, unknown>;
17
+ }
18
+ export type EditorShadowRuntimeReceiverSource = 'plan' | 'explicit' | 'legacy' | 'auto';
19
+ export type EditorShadowRuntimeParamName = keyof EditorShadowResolvedParams;
20
+ export interface EditorShadowRuntimeParamsUsage {
21
+ consumed: EditorShadowRuntimeParamName[];
22
+ ignored: EditorShadowRuntimeParamName[];
23
+ }
24
+ export interface EditorShadowRuntimeReceiverState {
25
+ target: EditorShadowRuntimeTarget;
26
+ targetId: string;
27
+ nodeIds: string[];
28
+ source: EditorShadowRuntimeReceiverSource;
29
+ receiveShadows: boolean;
30
+ receiveDynamicShadows: boolean;
31
+ materialLightingModel: EditorShadowRuntimeMaterialLightingModel;
32
+ diagnostics: EditorShadowDiagnostic[];
33
+ }
34
+ export interface EditorShadowRuntimeCasterState {
35
+ target: EditorShadowRuntimeTarget;
36
+ targetId: string;
37
+ plan: EditorShadowResolvedPlan;
38
+ backend: EditorShadowPlanBackend;
39
+ mode: EditorShadowResolvedMode;
40
+ quality: EditorShadowResolvedQuality;
41
+ params: EditorShadowResolvedParams;
42
+ receiverTargetIds: string[];
43
+ receivers: EditorShadowRuntimeReceiverState[];
44
+ paramsUsage: EditorShadowRuntimeParamsUsage;
45
+ diagnostics: EditorShadowDiagnostic[];
46
+ }
47
+ export interface EditorShadowRuntimeState {
48
+ targets: EditorShadowRuntimeTarget[];
49
+ casters: EditorShadowRuntimeCasterState[];
50
+ receivers: EditorShadowRuntimeReceiverState[];
51
+ diagnostics: EditorShadowDiagnostic[];
52
+ }
53
+ export interface ResolveEditorShadowRuntimeStateInput {
54
+ targets: readonly EditorShadowRuntimeTarget[];
55
+ fallbackMode?: EditorShadowResolvedMode;
56
+ fallbackQuality?: EditorShadowResolvedQuality;
57
+ legacyReceiverPatterns?: readonly string[];
58
+ }
59
+ export declare function readEditorShadowRuntimePlan(value: unknown): EditorShadowResolvedPlan | null;
60
+ export declare function resolveEditorShadowRuntimeState(input: ResolveEditorShadowRuntimeStateInput): EditorShadowRuntimeState;
61
+ export declare function resolveEditorShadowRuntimeParamsUsage(backend: EditorShadowPlanBackend): EditorShadowRuntimeParamsUsage;
62
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/shadow-system/runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,410 @@
1
+ import { readRecord } from '../shared/json.js';
2
+ import { readEditorShadowResolvedMode, readEditorShadowResolvedQuality, readEditorShadowSettingsWithLegacy } from './legacy.js';
3
+ import { resolveEditorShadowParams } from './quality.js';
4
+ const RUNTIME_SHADOW_PARAM_NAMES = [
5
+ 'opacity',
6
+ 'softness',
7
+ 'bias',
8
+ 'normalBias',
9
+ 'maxDistance',
10
+ 'resolution',
11
+ 'cascadeCount',
12
+ 'bakeSamples',
13
+ 'blurKernel',
14
+ ];
15
+ export function readEditorShadowRuntimePlan(value) {
16
+ const plan = readRecord(value);
17
+ if (!plan)
18
+ return null;
19
+ if (typeof plan.casterId !== 'string' || !plan.casterId.trim())
20
+ return null;
21
+ if (!Array.isArray(plan.receiverIds) || !plan.receiverIds.every(entry => typeof entry === 'string'))
22
+ return null;
23
+ if (!isEditorShadowPlanBackend(plan.backend))
24
+ return null;
25
+ if (!isEditorShadowRuntimeResolvedMode(plan.mode))
26
+ return null;
27
+ if (!isEditorShadowRuntimeResolvedQuality(plan.quality))
28
+ return null;
29
+ const params = readEditorShadowRuntimeResolvedParams(plan.params);
30
+ if (!params)
31
+ return null;
32
+ if (!Array.isArray(plan.diagnostics))
33
+ return null;
34
+ return {
35
+ casterId: plan.casterId,
36
+ receiverIds: normalizeRuntimeStringList(plan.receiverIds),
37
+ ...(typeof plan.lightId === 'string' && plan.lightId.trim() ? { lightId: plan.lightId.trim() } : {}),
38
+ backend: plan.backend,
39
+ mode: plan.mode,
40
+ quality: plan.quality,
41
+ params,
42
+ ...(typeof plan.stale === 'boolean' ? { stale: plan.stale } : {}),
43
+ diagnostics: plan.diagnostics.filter(isEditorShadowDiagnostic),
44
+ };
45
+ }
46
+ export function resolveEditorShadowRuntimeState(input) {
47
+ const targets = input.targets.filter(target => typeof target.id === 'string' && target.id.trim());
48
+ const targetIndex = createRuntimeTargetIndex(targets);
49
+ const diagnostics = [];
50
+ const casters = [];
51
+ const globalReceivers = new Map();
52
+ for (const target of targets) {
53
+ if (!isRuntimeTargetActive(target))
54
+ continue;
55
+ const plan = readEditorShadowRuntimePlan(target.shadowPlan)
56
+ ?? createRuntimeFallbackPlan(target, input.fallbackMode, input.fallbackQuality);
57
+ if (!plan || plan.backend === 'none' || plan.mode === 'none')
58
+ continue;
59
+ const resolvedReceivers = resolveRuntimeReceiversForCaster({
60
+ caster: target,
61
+ plan,
62
+ targets,
63
+ targetIndex,
64
+ legacyReceiverPatterns: input.legacyReceiverPatterns ?? [],
65
+ });
66
+ const receiverDiagnostics = resolvedReceivers.flatMap(receiver => receiver.diagnostics);
67
+ const receiverStates = resolvedReceivers.filter(receiver => receiver.targetId);
68
+ const paramsUsage = resolveEditorShadowRuntimeParamsUsage(plan.backend);
69
+ const casterDiagnostics = [
70
+ ...plan.diagnostics,
71
+ ...receiverDiagnostics,
72
+ ...createRuntimeParamsDiagnostics(plan, paramsUsage),
73
+ ];
74
+ if (!target.shadowPlan) {
75
+ casterDiagnostics.push({
76
+ code: 'shadow.runtimeFallback',
77
+ severity: 'info',
78
+ message: `Runtime shadow target "${target.id}" used legacy shadow settings because no resolved shadowPlan was present.`,
79
+ casterId: target.id,
80
+ details: { source: 'legacy' },
81
+ });
82
+ }
83
+ const casterState = {
84
+ target,
85
+ targetId: target.id,
86
+ plan,
87
+ backend: plan.backend,
88
+ mode: plan.mode,
89
+ quality: plan.quality,
90
+ params: plan.params,
91
+ receiverTargetIds: receiverStates
92
+ .filter(receiver => receiver.receiveShadows)
93
+ .map(receiver => receiver.targetId),
94
+ receivers: receiverStates,
95
+ paramsUsage,
96
+ diagnostics: casterDiagnostics,
97
+ };
98
+ casters.push(casterState);
99
+ diagnostics.push(...casterDiagnostics);
100
+ for (const receiver of receiverStates) {
101
+ const existing = globalReceivers.get(receiver.targetId);
102
+ if (!existing || scoreRuntimeReceiverSource(receiver.source) > scoreRuntimeReceiverSource(existing.source)) {
103
+ globalReceivers.set(receiver.targetId, receiver);
104
+ }
105
+ }
106
+ }
107
+ return {
108
+ targets,
109
+ casters,
110
+ receivers: [...globalReceivers.values()].sort((a, b) => a.targetId.localeCompare(b.targetId)),
111
+ diagnostics,
112
+ };
113
+ }
114
+ export function resolveEditorShadowRuntimeParamsUsage(backend) {
115
+ const consumed = new Set();
116
+ if (backend === 'dynamic-map') {
117
+ for (const param of ['opacity', 'bias', 'normalBias', 'maxDistance', 'resolution', 'cascadeCount']) {
118
+ consumed.add(param);
119
+ }
120
+ }
121
+ else if (backend === 'blob') {
122
+ for (const param of ['opacity', 'softness', 'maxDistance'])
123
+ consumed.add(param);
124
+ }
125
+ else if (backend === 'projected') {
126
+ for (const param of ['opacity', 'softness', 'maxDistance', 'blurKernel'])
127
+ consumed.add(param);
128
+ }
129
+ else if (backend === 'static-baked') {
130
+ for (const param of ['opacity', 'softness', 'maxDistance', 'resolution', 'bakeSamples', 'blurKernel']) {
131
+ consumed.add(param);
132
+ }
133
+ }
134
+ return {
135
+ consumed: RUNTIME_SHADOW_PARAM_NAMES.filter(param => consumed.has(param)),
136
+ ignored: RUNTIME_SHADOW_PARAM_NAMES.filter(param => !consumed.has(param)),
137
+ };
138
+ }
139
+ function resolveRuntimeReceiversForCaster(input) {
140
+ const receivers = new Map();
141
+ if (input.plan.receiverIds.length > 0) {
142
+ for (const receiverId of input.plan.receiverIds) {
143
+ const matches = input.targetIndex.get(receiverId) ?? [];
144
+ if (matches.length === 0) {
145
+ receivers.set(`missing:${receiverId}`, createMissingRuntimeReceiver(input.caster.id, receiverId));
146
+ continue;
147
+ }
148
+ for (const target of matches) {
149
+ if (target.id === input.caster.id || !isRuntimeTargetActive(target))
150
+ continue;
151
+ setHigherPriorityRuntimeReceiver(receivers, createRuntimeReceiverState({
152
+ target,
153
+ casterId: input.caster.id,
154
+ backend: input.plan.backend,
155
+ source: 'plan',
156
+ }));
157
+ }
158
+ }
159
+ }
160
+ for (const target of input.targets) {
161
+ if (target.id === input.caster.id || !isRuntimeTargetActive(target))
162
+ continue;
163
+ const settings = readRuntimeTargetShadowSettings(target);
164
+ if (settings?.receive === 'none') {
165
+ if (receivers.has(target.id)) {
166
+ setHigherPriorityRuntimeReceiver(receivers, createRuntimeReceiverState({
167
+ target,
168
+ casterId: input.caster.id,
169
+ backend: input.plan.backend,
170
+ source: 'explicit',
171
+ forcedReceive: false,
172
+ }));
173
+ }
174
+ continue;
175
+ }
176
+ if (settings?.receive === 'enabled' || settings?.receive === 'auto') {
177
+ setHigherPriorityRuntimeReceiver(receivers, createRuntimeReceiverState({
178
+ target,
179
+ casterId: input.caster.id,
180
+ backend: input.plan.backend,
181
+ source: settings.receive === 'enabled' ? 'explicit' : 'auto',
182
+ }));
183
+ continue;
184
+ }
185
+ if (input.plan.receiverIds.length === 0 && isLegacyRuntimeReceiver(target, input.legacyReceiverPatterns)) {
186
+ setHigherPriorityRuntimeReceiver(receivers, createRuntimeReceiverState({
187
+ target,
188
+ casterId: input.caster.id,
189
+ backend: input.plan.backend,
190
+ source: 'legacy',
191
+ }));
192
+ }
193
+ }
194
+ return [...receivers.values()]
195
+ .sort((a, b) => scoreRuntimeReceiverSource(b.source) - scoreRuntimeReceiverSource(a.source) || a.targetId.localeCompare(b.targetId));
196
+ }
197
+ function createRuntimeReceiverState(input) {
198
+ const materialLightingModel = input.target.materialLightingModel ?? 'unknown';
199
+ const receiveShadows = input.forcedReceive ?? true;
200
+ const dynamicUnsupported = input.backend === 'dynamic-map'
201
+ && receiveShadows
202
+ && (materialLightingModel === 'unlit' || input.target.receiveDynamicShadows === false);
203
+ const diagnostics = [];
204
+ if (input.forcedReceive === false) {
205
+ diagnostics.push({
206
+ code: 'shadow.receiverNotFound',
207
+ severity: 'warning',
208
+ message: `Runtime shadow receiver "${input.target.id}" is disabled by shadow.receive none.`,
209
+ casterId: input.casterId,
210
+ receiverId: input.target.id,
211
+ details: { source: input.source, reason: 'receive-none' },
212
+ });
213
+ }
214
+ if (dynamicUnsupported) {
215
+ diagnostics.push({
216
+ code: 'shadow.materialUnsupported',
217
+ severity: 'warning',
218
+ message: `Runtime shadow receiver "${input.target.id}" uses an unlit material, so dynamic-map shadows cannot affect it.`,
219
+ casterId: input.casterId,
220
+ receiverId: input.target.id,
221
+ details: {
222
+ backend: input.backend,
223
+ materialLightingModel,
224
+ },
225
+ });
226
+ }
227
+ return {
228
+ target: input.target,
229
+ targetId: input.target.id,
230
+ nodeIds: readRuntimeTargetNodeIds(input.target),
231
+ source: input.source,
232
+ receiveShadows: receiveShadows && !dynamicUnsupported,
233
+ receiveDynamicShadows: input.backend === 'dynamic-map' && receiveShadows && !dynamicUnsupported,
234
+ materialLightingModel,
235
+ diagnostics,
236
+ };
237
+ }
238
+ function createMissingRuntimeReceiver(casterId, receiverId) {
239
+ return {
240
+ target: { id: '' },
241
+ targetId: '',
242
+ nodeIds: [],
243
+ source: 'plan',
244
+ receiveShadows: false,
245
+ receiveDynamicShadows: false,
246
+ materialLightingModel: 'unknown',
247
+ diagnostics: [{
248
+ code: 'shadow.receiverNotFound',
249
+ severity: 'warning',
250
+ message: `Runtime shadow receiver "${receiverId}" was not found.`,
251
+ casterId,
252
+ receiverId,
253
+ details: { source: 'plan' },
254
+ }],
255
+ };
256
+ }
257
+ function setHigherPriorityRuntimeReceiver(receivers, receiver) {
258
+ const key = receiver.targetId || `missing:${receiver.diagnostics[0]?.receiverId ?? receivers.size}`;
259
+ const existing = receivers.get(key);
260
+ if (!existing || scoreRuntimeReceiverSource(receiver.source) >= scoreRuntimeReceiverSource(existing.source)) {
261
+ receivers.set(key, receiver);
262
+ }
263
+ }
264
+ function createRuntimeFallbackPlan(target, fallbackMode, fallbackQuality) {
265
+ const settings = readRuntimeTargetShadowSettings(target);
266
+ if (settings?.cast === 'none')
267
+ return null;
268
+ const mode = readEditorShadowResolvedMode(settings, fallbackMode ?? 'none');
269
+ if (mode === 'none')
270
+ return null;
271
+ const quality = readEditorShadowResolvedQuality(settings, fallbackQuality ?? 'medium');
272
+ return {
273
+ casterId: target.id,
274
+ receiverIds: [],
275
+ backend: resolveRuntimePlanBackend(mode),
276
+ mode,
277
+ quality,
278
+ params: resolveEditorShadowParams(quality, settings?.params),
279
+ diagnostics: [],
280
+ };
281
+ }
282
+ function readRuntimeTargetShadowSettings(target) {
283
+ return readEditorShadowSettingsWithLegacy({
284
+ shadow: target.shadow,
285
+ shadowMode: target.shadowMode ?? undefined,
286
+ }).shadow;
287
+ }
288
+ function createRuntimeTargetIndex(targets) {
289
+ const index = new Map();
290
+ for (const target of targets) {
291
+ for (const id of readRuntimeTargetNodeIds(target)) {
292
+ const entries = index.get(id) ?? [];
293
+ entries.push(target);
294
+ index.set(id, entries);
295
+ }
296
+ }
297
+ return index;
298
+ }
299
+ function readRuntimeTargetNodeIds(target) {
300
+ return normalizeRuntimeStringList([
301
+ target.id,
302
+ ...(target.nodeIds ?? []),
303
+ ...(target.rootNodeId ? [target.rootNodeId] : []),
304
+ ]);
305
+ }
306
+ function createRuntimeParamsDiagnostics(plan, usage) {
307
+ if (plan.backend === 'none' || usage.ignored.length === 0)
308
+ return [];
309
+ return [{
310
+ code: 'shadow.paramsIgnored',
311
+ severity: 'info',
312
+ message: `Runtime shadow backend "${plan.backend}" ignores params: ${usage.ignored.join(', ')}.`,
313
+ casterId: plan.casterId,
314
+ details: {
315
+ backend: plan.backend,
316
+ ignoredParams: usage.ignored,
317
+ consumedParams: usage.consumed,
318
+ },
319
+ }];
320
+ }
321
+ function resolveRuntimePlanBackend(mode) {
322
+ if (mode === 'dynamic')
323
+ return 'dynamic-map';
324
+ if (mode === 'static')
325
+ return 'static-baked';
326
+ if (mode === 'blob')
327
+ return 'blob';
328
+ if (mode === 'projected')
329
+ return 'projected';
330
+ return 'none';
331
+ }
332
+ function isRuntimeTargetActive(target) {
333
+ return target.active !== false && target.visible !== false;
334
+ }
335
+ function isLegacyRuntimeReceiver(target, patterns) {
336
+ const key = `${target.id} ${target.name ?? ''}`.toLowerCase();
337
+ if (key.includes('shadow receiver'))
338
+ return true;
339
+ return patterns.some(pattern => {
340
+ const normalized = pattern.toLowerCase().trim();
341
+ return normalized.length > 0 && key.includes(normalized);
342
+ });
343
+ }
344
+ function scoreRuntimeReceiverSource(source) {
345
+ if (source === 'explicit')
346
+ return 120;
347
+ if (source === 'plan')
348
+ return 100;
349
+ if (source === 'legacy')
350
+ return 60;
351
+ return 40;
352
+ }
353
+ function normalizeRuntimeStringList(values) {
354
+ const seen = new Set();
355
+ const normalized = [];
356
+ for (const value of values) {
357
+ const entry = typeof value === 'string' ? value.trim() : '';
358
+ if (!entry || seen.has(entry))
359
+ continue;
360
+ seen.add(entry);
361
+ normalized.push(entry);
362
+ }
363
+ return normalized;
364
+ }
365
+ function readEditorShadowRuntimeResolvedParams(value) {
366
+ const params = readRecord(value);
367
+ if (!params)
368
+ return null;
369
+ const result = {};
370
+ for (const key of RUNTIME_SHADOW_PARAM_NAMES) {
371
+ const param = params[key];
372
+ if (typeof param !== 'number' || !Number.isFinite(param))
373
+ return null;
374
+ result[key] = param;
375
+ }
376
+ if (!isRuntimeShadowResolution(result.resolution) || !isRuntimeShadowCascadeCount(result.cascadeCount))
377
+ return null;
378
+ return result;
379
+ }
380
+ function isEditorShadowDiagnostic(value) {
381
+ const diagnostic = readRecord(value);
382
+ return !!diagnostic
383
+ && typeof diagnostic.code === 'string'
384
+ && (diagnostic.severity === 'info' || diagnostic.severity === 'warning' || diagnostic.severity === 'error')
385
+ && typeof diagnostic.message === 'string';
386
+ }
387
+ function isEditorShadowPlanBackend(value) {
388
+ return value === 'none'
389
+ || value === 'dynamic-map'
390
+ || value === 'static-baked'
391
+ || value === 'blob'
392
+ || value === 'projected';
393
+ }
394
+ function isEditorShadowRuntimeResolvedMode(value) {
395
+ return value === 'none'
396
+ || value === 'dynamic'
397
+ || value === 'static'
398
+ || value === 'blob'
399
+ || value === 'projected';
400
+ }
401
+ function isEditorShadowRuntimeResolvedQuality(value) {
402
+ return value === 'low' || value === 'medium' || value === 'high' || value === 'ultra';
403
+ }
404
+ function isRuntimeShadowResolution(value) {
405
+ return value === 512 || value === 1024 || value === 2048 || value === 4096;
406
+ }
407
+ function isRuntimeShadowCascadeCount(value) {
408
+ return value === 1 || value === 2 || value === 4;
409
+ }
410
+ //# sourceMappingURL=runtime.js.map