[D3D12] Untile whole mip tail to make alignment assumptions later, other mip fixes

This commit is contained in:
Triang3l
2020-06-23 23:49:42 +03:00
parent bd1a1e2de3
commit d26f84b36b
105 changed files with 15501 additions and 16982 deletions

View File

@@ -76,7 +76,7 @@ void main(uint3 xe_thread_id : SV_DispatchThreadID) {
// Uncompress and write the rows.
uint3 texel_index_host = block_index << uint3(2u, 2u, 0u);
uint texel_offset_host = XeTextureHostLinearOffset(
texel_index_host, xe_texture_load_size_texels.y,
texel_index_host, xe_texture_load_height_texels,
xe_texture_load_host_pitch, 2u) + xe_texture_load_host_base;
for (uint i = 0u; i < 4u; ++i) {
uint4 row_01, row_23;
@@ -84,7 +84,7 @@ void main(uint3 xe_thread_id : SV_DispatchThreadID) {
weights_high >> (i * 8u), row_01, row_23);
xe_texture_load_dest.Store4(texel_offset_host, row_01);
xe_texture_load_dest.Store4(texel_offset_host + 16u, row_23);
if (++texel_index_host.y >= xe_texture_load_size_texels.y) {
if (++texel_index_host.y >= xe_texture_load_height_texels) {
return;
}
texel_offset_host += xe_texture_load_host_pitch;