[D3D12] Common root constants for EDRAM load/store and single sample load
This commit is contained in:
@@ -19,13 +19,13 @@ void main(uint3 xe_group_id : SV_GroupID,
|
||||
uint4 depth = depth24to32 + (depth32 - depth24to32) *
|
||||
uint4(XeFloat32To20e4(depth32) == depth24);
|
||||
uint rt_offset = xe_thread_id.y * xe_edram_rt_color_depth_pitch +
|
||||
xe_thread_id.x * 16u;
|
||||
xe_thread_id.x * 16u + xe_edram_rt_color_depth_offset;
|
||||
xe_edram_load_store_dest.Store4(rt_offset, depth);
|
||||
// Stencil.
|
||||
uint4 stencil = (depth24_stencil & 0xFFu) << uint4(0u, 8u, 16u, 24u);
|
||||
stencil.xy |= stencil.zw;
|
||||
stencil.x |= stencil.y;
|
||||
rt_offset = xe_edram_rt_stencil_offset +
|
||||
xe_thread_id.y * xe_edram_rt_stencil_pitch + xe_thread_id.x * 4u;
|
||||
rt_offset = xe_thread_id.y * xe_edram_rt_stencil_pitch + xe_thread_id.x * 4u +
|
||||
xe_edram_rt_stencil_offset;
|
||||
xe_edram_load_store_dest.Store(rt_offset, stencil.x);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user