Skip to content

feat: add BC7 CPU decode for legacy GPUs #74

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

Merged
merged 1 commit into from
Apr 2, 2025

Conversation

zao
Copy link
Contributor

@zao zao commented Apr 1, 2025

While ANGLE itself runs on legacy feature levels (10.0, 10.1); support for 11.0+ texture formats like BC7 is absent.

To support this lower end of GPUs we introduce fallback logic to transcode BC7 into RGBA with a hardcoded option to also reduce texture resolution by one level to counteract the 4x increase in VRAM usage this entails.

This adds a dependency on cmp_core from GPUOpen's Compressonator, built as a static library so there's no runtime deployment concerns.

While ANGLE itself runs on legacy feature levels (10.0, 10.1); support
for 11.0+ texture formats like BC7 is absent.

To support this lower end of GPUs we introduce fallback logic to
transcode BC7 into RGBA with a hardcoded option to also reduce texture
resolution by one level to counteract the 4x increase in VRAM usage this
entails.

This adds a dependency on `cmp_core` from GPUOpen's Compressonator,
built as a static library so there's no runtime deployment concerns.
@zao
Copy link
Contributor Author

zao commented Apr 1, 2025

The user in PathOfBuildingCommunity/PathOfBuilding-PoE2#844 has reported back that this addressed their missing texture problems.

Should be good to go.

@Wires77 Wires77 merged commit 758d35a into PathOfBuildingCommunity:master Apr 2, 2025
1 check passed
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

Successfully merging this pull request may close these issues.

2 participants