[D3D12] Untile whole mip tail to make alignment assumptions later, other mip fixes
This commit is contained in:
@@ -41,14 +41,14 @@ void main(uint3 xe_thread_id : SV_DispatchThreadID) {
|
||||
blocks = XeByteSwap(blocks, xe_texture_load_endianness);
|
||||
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) {
|
||||
xe_texture_load_dest.Store4(
|
||||
texel_offset_host,
|
||||
XeDXT3AAs1111TwoBlocksRowToBGRA4(
|
||||
(i >= 2u ? blocks.yw : blocks.xz) >> ((i & 1u) << 4u)));
|
||||
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;
|
||||
|
||||
Reference in New Issue
Block a user