FX P4: effects in snapshots (custom size, supersampled, 360 policy) #547

Closed
opened 2026-10-08 06:28:03 +00:00 by sky_line · 1 comment
Owner

Part of epic #542 (from #186). Design + code citations are in the epic; read it first.

Size: M (2-3 d)

Make FX output match the live view in user snapshots.

Scope

  • Offscreen recordings (beginOffscreen, llcleanrenderervk.cpp:15439) run the stack at the snapshot size. That requires a recompile (BUFFER_WIDTH/HEIGHT are compile-time) + target re-creation.
    • per-size module cache
    • warm the compile when the snapshot floater's size changes
    • VRAM pre-check; if it doesn't fit, take the shot without FX and say so
  • Restore live targets after endOffscreen per the generation registry.
  • screenshot source = true; skip techniques with enabled_in_screenshot = false.
  • Supersampled shots (#417): run FX only on the last accumulation recording.
  • 360: FX off in v1 (seams). Cel lighting still applies.
  • Logout screenshot / eyedropper behaviour documented: the eyedropper reads pre-FX linear scene by design (recordScenePixel :26651).

Done when

  • A 4K / 8K snapshot with a depth effect matches the live view (scaled), and the live view resumes with no stale descriptors.
  • A supersampled snapshot costs one FX run, not N.
  • 360 capture is unaffected by FX, and the UI says why.
Part of epic #542 (from #186). Design + code citations are in the epic; read it first. **Size:** M (2-3 d) Make FX output match the live view in user snapshots. **Scope** - Offscreen recordings (`beginOffscreen`, `llcleanrenderervk.cpp:15439`) run the stack at the snapshot size. That requires a recompile (BUFFER_WIDTH/HEIGHT are compile-time) + target re-creation. - per-size module cache - warm the compile when the snapshot floater's size changes - VRAM pre-check; if it doesn't fit, take the shot without FX and say so - Restore live targets after `endOffscreen` per the generation registry. - `screenshot` source = true; skip techniques with `enabled_in_screenshot = false`. - **Supersampled shots (#417):** run FX only on the last accumulation recording. - **360:** FX off in v1 (seams). Cel *lighting* still applies. - Logout screenshot / eyedropper behaviour documented: the eyedropper reads pre-FX linear scene by design (`recordScenePixel` :26651). **Done when** - [ ] A 4K / 8K snapshot with a depth effect matches the live view (scaled), and the live view resumes with no stale descriptors. - [ ] A supersampled snapshot costs one FX run, not N. - [ ] 360 capture is unaffected by FX, and the UI says why.
sky_line added this to the Slipstream project 2026-10-08 06:28:03 +00:00
Author
Owner

Done: FX P4 (effects in snapshots, 8ca2679046). Shipped in 1.2.0 Beta 4/5 (ReShade effects + cel shading).

Done: FX P4 (effects in snapshots, 8ca2679046). Shipped in 1.2.0 Beta 4/5 (ReShade effects + cel shading).
sky_line 2026-10-09 09:25:21 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
sky_line/Slipstream#547
No description provided.