vulkan: initialize presentation upscaling independently of frame generation #417
No reviewers
Labels
No labels
accessibility
autorelease: pending
autorelease: tagged
bug
dependencies
documentation
duplicate
enhancement
github_actions
good first issue
help wanted
invalid
question
testing wanted
wontfix
No milestone
No assignees
1 participant
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Hookshot!417
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/upscale-without-framegen"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Upscaling and Sharpness silently stop working when Frame generation is Off. Forward the direct-present sampled view under the replay lock and initialize the scaler independently, so Catmull-Rom, Lanczos and sharpening work without interpolation's copy/luma work, frame sets or display thread.
The scaler has independent initialization/failure state and rejects invalid crop/destination sizes. Partial allocation failure clears stale size metadata and falls back to the existing blit. No renderer API, aspect policy, decoder or game-generation change is included.
The branch normally merges upstream
e40306e. It preserves all three upstream queue flushes before interpolation/scaler resize waits, including locked flushes before both scaler idle waits.Validation:
ad725a9: Windows/Linux source checks, SPIR-V fixture and Linux AppImage renderer build.e40306e; API4 belongs to #205.Opt into RX_VK_UPSCALE_LOG=1 to log the first successful scale dispatch's mode, sharpness, source, requested crop and destination once.
These are compatibility checks, not native60+FPS evidence: warm gameplay was roughly 48-52FPS at 100% resolution. The first cold run sustained 11.6-11.8FPS after shader jobs completed, recovering to 46-50FPS after F11; that separate readback-wait anomaly remains unexplained and is not retroactively passed.
Physical32:9 fullscreen, the reporter's RTX4070, AMD/Intel/Linux runtime, wider progression and physical audio/controller behavior remain unverified. This fixes the established FG-off bypass; no reported black-screen fix is claimed. The sampled view retains the cached image's existing retirement policy; a later presentation-fence ownership model and aggressive eviction overrides remain outside this change.