Commit Graph

41 Commits

Author SHA1 Message Date
d196ec9264 refactor(srp): add renderer data invalidation seam
Introduce ScriptableRendererData dirty/invalidation support so renderer and feature caches can be released and rebuilt within the same managed asset runtime.

Add managed probes and scripting coverage for non-public dirty APIs and for renderer rebuild after invalidation, then archive the completed phase plan.
2026-04-20 02:48:16 +08:00
5e88449e3d refactor(srp): move renderer feature setup into renderer data
Introduce a formal ScriptableRendererData setup seam so renderer feature attachment is owned by renderer data instead of renderer constructors pulling feature caches.

Route lifecycle and reuse probes through the new setup path, lock the non-public setup seam in the API surface probe, and update scripting expectations accordingly.
2026-04-20 02:30:07 +08:00
778913ddcb refactor(srp): make universal renderer execution context-first
Promote ScriptableRenderer renderer-recording context methods to the primary Universal execution seam and route the renderer-driven pipeline through that seam.

Update managed probes and scripting expectations to cover the new non-public renderer recording contract, and archive the completed phase plan.
2026-04-20 02:15:47 +08:00
cd29c8b2bc feat(srp): add renderer-driven pipeline backbone
Introduce renderer-driven and renderer-backed managed pipeline base types in the Universal package.

Move shared renderer-data/default-renderer ownership out of UniversalRenderPipelineAsset, migrate probe assets onto the generic seam, and expose renderer recording/request context types for future SRP expansion.

Update scripting API-surface expectations and validate with build, unit tests, scripting tests, and old editor smoke.
2026-04-20 02:05:17 +08:00
9e6c473186 feat(srp): add managed camera frame planning seam
Expose native camera frame planning controls to managed pipeline assets and renderer features.

Allow managed planning to override fullscreen stage heuristics while keeping CameraFramePlan as the native execution contract.

Add scripting coverage, probe assets, and archive the phase plan after build, test, and editor smoke validation.
2026-04-20 01:48:16 +08:00
58dde75d3d refactor(srp): add managed lifecycle cleanup seams
Invoke managed pipeline disposal and asset runtime cleanup from the native bridge lifecycle. Add Universal renderer and feature cleanup hooks plus regression probes to verify runtime cache teardown semantics.
2026-04-20 01:14:37 +08:00
beaf5809d5 refactor(srp): unify managed pipeline instance ownership
Move shared managed ScriptableRenderPipeline instance ownership into MonoManagedRenderPipelineAssetRuntime.

Make stage recorders borrow the runtime-owned pipeline instead of creating and destroying private handles.

Add a regression test that locks one CreatePipeline call across multiple stage recorders.
2026-04-20 00:44:09 +08:00
cbc0ddbd42 refactor(srp): formalize universal renderer selection and caching 2026-04-20 00:16:32 +08:00
ad32d64269 refactor(srp): move universal backend ownership into renderer data 2026-04-20 00:04:24 +08:00
9c8f2ae84c refactor(srp): let universal assets declare native backend keys 2026-04-19 23:32:41 +08:00
21b790c2f8 refactor(srp): unify mono recorder backend ownership 2026-04-19 23:09:34 +08:00
74e790891c refactor(srp): decouple managed pipeline assets from fixed native backend 2026-04-19 21:46:05 +08:00
20e727e882 refactor(srp): close universal recording composition seam 2026-04-19 17:00:48 +08:00
6c605bbe20 refactor(srp): hide universal recording helpers behind base apis 2026-04-19 16:17:38 +08:00
93f06e84ed Refactor new editor boundaries and test ownership 2026-04-19 15:52:28 +08:00
f45b34a03a Refactor new editor state ownership model 2026-04-19 04:36:52 +08:00
c59cd83c38 refactor(new_editor): tighten app dependency boundaries 2026-04-19 02:48:41 +08:00
8164baba0a docs(plan): archive thesis drafts and reference updates 2026-04-19 00:24:25 +08:00
9ca7960346 docs(plan): archive editor and SRP milestones 2026-04-18 23:57:55 +08:00
ed9b5178f8 docs: archive old plans 2026-04-17 22:43:27 +08:00
8798e63e32 refactor(rendering): formalize native graph recording helpers 2026-04-15 20:46:00 +08:00
64212a53c7 Add 3DGS D3D12 MVS bootstrap and PLY loader 2026-04-13 00:36:50 +08:00
8848cfd958 chore: checkpoint current workspace changes 2026-04-11 22:14:02 +08:00
0a2bdedc59 Archive outdated Library cache plans 2026-04-11 15:57:29 +08:00
fac6e588a8 Formalize gaussian splat prepare-order pass 2026-04-11 03:02:30 +08:00
4080b2e5fe Fix D3D12 NanoVDB volume load stalls 2026-04-11 00:27:23 +08:00
7fc7bb0a22 docs(api): sync archive and command guidance 2026-04-10 17:33:51 +08:00
447977214e docs(api): sync entry guidance for dual api roots 2026-04-10 17:32:04 +08:00
46fac8a215 docs(api): sync active and archived API entry docs 2026-04-10 17:27:29 +08:00
e2e4e08479 docs(api): refresh audit sync snapshot 2026-04-10 17:26:05 +08:00
dd467d2468 docs: drop audit report from commit history 2026-04-10 17:19:45 +08:00
4111f841d4 Formalize volume shader include context 2026-04-10 01:05:03 +08:00
225f533c7c docs(api): refresh rebuild status and close recovery wave 2026-04-10 00:10:08 +08:00
31756847ab docs: sync api and planning docs 2026-04-08 16:07:03 +08:00
eef5de7ee9 Archive completed renderer closure plans 2026-04-06 16:41:24 +08:00
6645d507d0 Formalize final color policy resolution 2026-04-06 15:55:50 +08:00
97f7c26eff Archive multi-light plan and draft next renderer phase 2026-04-05 17:23:50 +08:00
10fda68694 Clean up directional shadow integration test debug scaffolding 2026-04-05 13:32:39 +08:00
e5cb79f3ce chore: sync workspace state 2026-03-29 01:36:53 +08:00
268daf7bc9 Move design notes into docs/used 2026-03-25 21:55:28 +08:00
16e2065c6c Unified logging: Replace LogSystem with EditorConsoleSink
- Created EditorConsoleSink (implements ILogSink interface)
- EditorConsoleSink stores logs in memory buffer (max 1000 entries)
- Added to Debug::Logger in Application::Initialize()
- ConsolePanel now reads from EditorConsoleSink via static GetInstance()
- Removed separate LogSystem singleton
- Removed editor/src/Core/LogEntry.h (no longer needed)

Now Editor and Engine share the same Debug::Logger, with ConsolePanel
displaying logs via EditorConsoleSink.
2026-03-25 16:13:02 +08:00