perf(render): consume prepared mesh package at runtime

This commit is contained in:
Erik 2026-07-24 15:07:25 +02:00
parent c42f93b323
commit f05afc07c1
22 changed files with 328 additions and 370 deletions

View file

@ -46,6 +46,7 @@ public sealed class GameWindow :
private Shader? _terrainModernShader;
private CameraController? _cameraController;
private IDatReaderWriter? _dats;
private IPreparedAssetSource? _preparedAssets;
private readonly AcDream.App.Input.PointerPositionState _pointerPosition = new();
private AcDream.App.Input.CameraPointerInputController? _cameraPointerInput;
private Shader? _meshShader;
@ -711,6 +712,13 @@ public sealed class GameWindow :
IDatReaderWriter value) =>
PublishCompositionOwner(ref _dats, value, "DAT collection");
void IGameWindowContentEffectsAudioPublication.PublishPreparedAssetSource(
IPreparedAssetSource value) =>
PublishCompositionOwner(
ref _preparedAssets,
value,
"prepared asset source");
void IGameWindowContentEffectsAudioPublication.PublishMagicCatalog(
AcDream.App.Spells.MagicCatalog value) =>
PublishCompositionOwner(ref _magicCatalog, value, "magic catalog");
@ -1132,6 +1140,7 @@ public sealed class GameWindow :
new ContentEffectsAudioCompositionPhase(
new ContentEffectsAudioDependencies(
_datDir,
_options.PreparedAssetPath,
_physicsDataCache,
_animationDiagnostics.DumpMotionEnabled,
SpellBook,
@ -1612,6 +1621,7 @@ public sealed class GameWindow :
_glConstructionCleanup),
new PlatformShutdownRoots(
_dats,
_preparedAssets,
_input,
_gl));
private void OnFocusChanged(bool focused)