Die4Ever / Die4Ever/AsyncGameEngine
dynamic pixel count with maximum render scale
- Dominant language
- C++
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
use this to determine the maximum resolution for allocating buffers, saves vram
dynamic pixel count will use dynamic resolution and also variable rate shading, and maybe MSAA too?
https://devblogs.microsoft.com/directx/variable-rate-shading-a-scalpel-in-a-world-of-sledgehammers/
https://developer.nvidia.com/vulkan-turing
"The shading rate can be as coarse as one fragment shader for each 4x4 block of pixels or as fine as launching 16 fragment shader invocations per pixel."
supersampling using VRS should be way more VRAM efficient than using large render targets? that means that even 1600% render scale could be done entirely with VRS with natively sized buffers?
objects with transparency/dithering would be biased towards 1x1 VRS or better
objects in the distance or inside of DoF or motion blur could be biased towards 1x2 or 2x2 VRS
need a setting for minimum desired frame rate and maximum fps, do I also need target fps?
for each frame it would calculate how many pixels it wants to render (no more than the maximum render scale) and then scale the VRS data to try to match the desired pixel count
Contributor guide
No contributing guide indexed for this repository
Research direction
No files, tests, or renderer entry points are named. Start by locating the existing render-scale, buffer-allocation, and VRS support in the C++ renderer, then read the linked DirectX and NVIDIA references. Done should include a decided pixel-count and frame-rate policy with working dynamic VRS behavior and validation that buffer resolution stays within the maximum scale.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-graphics, performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100