Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AMDVLK disables DCC based on feedback loop image usage instead of based on the image layout #375

Open
DadSchoorse opened this issue Sep 3, 2024 · 1 comment

Comments

@DadSchoorse
Copy link

Relevant XGL code: https://github.com/GPUOpen-Drivers/xgl/blob/de3316323e16b2b71a738efc7312f254069f28a6/icd/api/vk_image.cpp#L539-L544

DXVK creates all d3d9 images that can be used as an attachment with that usage. Then, when a feedback loop is detected, it changes the image layout to VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT.

Disabling delta color compression based on the image usage means that DCC will always be disabled, even for games that don't use feedback loops. This will result in unnecessary and potentially large performance decrease. Instead, AMDVLK should disable dcc when the application transitions to the feedback loop image layout.

@kd-11
Copy link

kd-11 commented Sep 4, 2024

RPCS3 does the same thing. If feedback loop layout is supported the usage flag is set for all render targets and the layout is switched on-demand.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants