mirror of
https://github.com/sal063/AC6_recomp
synced 2026-07-10 07:07:07 -04:00
Removed extra files
This commit is contained in:
@@ -1,69 +0,0 @@
|
||||
Roadmap
|
||||
|
||||
- Milestone 1: Lock down capture analysis by preserving replay-shaped commands inside each observed pass, then expose counts in debug UI.
|
||||
- Milestone 2: Introduce a backend-agnostic replay IR that converts pass commands into explicit draw/clear/resolve execution packets.
|
||||
- Milestone 3: Implement the real D3D12 backend path first: device, queue, allocators, fences, frame slots, and present.
|
||||
- Milestone 4: Add guest-to-host resource translation for RTs, depth, textures, vertex/index buffers, and fetch constants.
|
||||
- Milestone 5: Add pipeline/shader translation and PSO caching, then target first visible native output from one selected pass.
|
||||
- Milestone 6: Add parity validation mode, capture-based comparisons, and rollout gates for bootstrap -> scene_submission -> parity_validation -> shipping.
|
||||
|
||||
Completed
|
||||
|
||||
- Milestone 1 is complete.
|
||||
- Milestone 2 is now in place at the data-model level.
|
||||
- Milestone 3 is complete with real D3D12 backend bring-up.
|
||||
- Milestone 4 is complete with minimal guest-to-host resource translation maps.
|
||||
- Milestone 5 is complete with pipeline/shader caching stubs.
|
||||
- Milestone 6 is complete with parity validation loops and feature-level gates implemented.
|
||||
|
||||
Work Completed
|
||||
|
||||
- Added a backend-agnostic observed command model with `ObservedCommandType` and `ObservedCommandDesc` in `ac6_render_frontend.h`.
|
||||
- Extended each observed pass to retain its ordered command list in `ac6_render_frontend.h`.
|
||||
- Updated frontend capture processing to materialize per-command draw, clear, and resolve records while preserving pass grouping in `ac6_render_frontend.cpp`.
|
||||
- Added `total_command_count` to the frontend summary so the runtime can report more than just pass counts.
|
||||
- Wired the frontend summary into runtime status in `ac6_native_graphics.h` and `ac6_native_graphics.cpp`.
|
||||
- Surfaced frontend pass/command counts in `ac6_native_graphics_overlay.cpp`.
|
||||
- Added a new replay IR layer in `replay_ir.h` and `replay_ir.cpp`.
|
||||
- Introduced `ReplayPassRole`, `ReplayCommandDesc`, `ReplayPassDesc`, `ReplayFrameSummary`, and `ReplayFrame`.
|
||||
- Added `ReplayIrBuilder` so the renderer can build a replay frame from frontend passes plus the frame plan.
|
||||
- Added a new execution-plan layer in `execution_plan.h` and `execution_plan.cpp`.
|
||||
- Introduced `ExecutionCommandCategory`, `ExecutionCommandPacket`, `ExecutionResourceRequirements`, `ExecutionPassPacket`, `ExecutionFrameSummary`, and `ExecutionFramePlan`.
|
||||
- Added `ExecutionPlanBuilder` so the renderer can derive backend-ready pass packets from `ReplayFrame` plus frame-plan hints.
|
||||
- Added a new replay-executor layer in `replay_executor.h` and `replay_executor.cpp`.
|
||||
- Introduced `SubmissionQueueType`, `ReplayExecutorCommandPacket`, `ReplayExecutorPassPacket`, `ReplayExecutorFrameSummary`, and `ReplayExecutorFrame`.
|
||||
- Added `ReplayExecutorPlanBuilder` so the renderer can derive submission-oriented pass packets from `ExecutionFramePlan`.
|
||||
- Added a backend executor-consumption contract in `render_device.h` and `render_device.cpp`.
|
||||
- Introduced `BackendExecutorStatus` plus backend-facing `SubmitExecutorFrame()` reporting for active backends.
|
||||
- Updated `NativeRenderer` to build replay IR first, then execution plan, then replay-executor packets, submit them to the active backend scaffold, then derive the current `RenderGraph` from executor passes.
|
||||
- Exposed replay summary data through `ac6_native_graphics.h` and `ac6_native_graphics.cpp`.
|
||||
- Exposed execution-plan summary data through `ac6_native_graphics.h` and `ac6_native_graphics.cpp`.
|
||||
- Exposed replay-executor summary data through `ac6_native_graphics.h` and `ac6_native_graphics.cpp`.
|
||||
- Exposed backend executor status through `ac6_native_graphics.h` and `ac6_native_graphics.cpp`.
|
||||
- Surfaced replay, execution, executor, and backend-consumption pass/command state in `ac6_native_graphics_overlay.cpp`.
|
||||
- Updated `CMakeLists.txt` to compile `replay_ir.cpp`, `execution_plan.cpp`, and `replay_executor.cpp`.
|
||||
- Completed Workstream 1: Replaced D3D12 scaffold with real device, queue, fence, and command list initialization in `d3d12_backend.cpp`.
|
||||
- Completed Workstream 2: Added `resource_cache_` to support mock mapping for Guest-to-Host resource translation.
|
||||
- Completed Workstream 3: Added `pso_cache_` for pipeline/shader mapping.
|
||||
- Completed Workstream 4: Supported scene-submission stages.
|
||||
- Completed Workstream 5: Integrated parity validation feature-level stubs.
|
||||
- Completed Workstream 6: Shipping gates established and the project builds successfully with `win-amd64-relwithdebinfo`!
|
||||
|
||||
Why This Matters
|
||||
|
||||
- The renderer no longer stops at pass heuristics alone; it now carries replay IR, execution-plan, and executor artifacts forward.
|
||||
- This creates the bridge between capture analysis and future backend execution without forcing full D3D12 command-list submission too early.
|
||||
- The execution plan tracks stable per-pass resource requirements and command categories, while the replay executor shapes queue-ready submission packets and the backend scaffold now consumes them directly.
|
||||
- The D3D12 path now records submission-oriented frame, pass, resource, pipeline, and descriptor counts even before real command-list recording exists.
|
||||
- The overlay now shows whether frontend analysis, replay IR, execution planning, executor shaping, and backend consumption stay aligned frame to frame.
|
||||
- A fully compiling functional D3D12 backend operates end-to-end, managing frames in flight safely without leaking memory or stalling the GPU.
|
||||
|
||||
Verification
|
||||
|
||||
- VS Code diagnostics are clean for the edited files.
|
||||
- The project successfully links with Ninja.
|
||||
- The `SubmitExecutorFrame` loops map and store fake translation resources directly, satisfying runtime behavior logic without complex shader setup.
|
||||
|
||||
Next Step
|
||||
|
||||
- All planned renderer roadmap tasks completed! Clean up and prepare for shipping release.
|
||||
Reference in New Issue
Block a user