|
4 | 4 |
|
5 | 5 | [[vk::push_constant]] CountingPushData pushData;
|
6 | 6 |
|
7 |
| -using PtrAccessor = nbl::hlsl::bda::BdaAccessor < uint32_t >; |
| 7 | +using PtrAccessor = nbl::hlsl::BdaAccessor < uint32_t >; |
8 | 8 |
|
9 | 9 | groupshared uint32_t sdata[BucketCount];
|
10 | 10 |
|
@@ -69,15 +69,22 @@ void main(uint32_t3 ID : SV_GroupThreadID, uint32_t3 GroupID : SV_GroupID)
|
69 | 69 | params.maximum = pushData.maximum;
|
70 | 70 |
|
71 | 71 | nbl::hlsl::sort::counting <WorkgroupSize, BucketCount, uint32_t, DoublePtrAccessor, DoublePtrAccessor, PtrAccessor, SharedAccessor > counter;
|
| 72 | + |
| 73 | + const nbl::hlsl::bda::__ptr< uint32_t > input_key_ptr = nbl::hlsl::bda::__ptr < uint32_t > (pushData.inputKeyAddress); |
| 74 | + const nbl::hlsl::bda::__ptr< uint32_t > input_value_ptr = nbl::hlsl::bda::__ptr < uint32_t > (pushData.inputValueAddress); |
| 75 | + const nbl::hlsl::bda::__ptr< uint32_t > histogram_ptr = nbl::hlsl::bda::__ptr < uint32_t > (pushData.histogramAddress); |
| 76 | + const nbl::hlsl::bda::__ptr< uint32_t > output_key_ptr = nbl::hlsl::bda::__ptr < uint32_t > (pushData.outputKeyAddress); |
| 77 | + const nbl::hlsl::bda::__ptr< uint32_t > output_value_ptr = nbl::hlsl::bda::__ptr < uint32_t > (pushData.outputValueAddress); |
| 78 | + |
72 | 79 | DoublePtrAccessor key_accessor = DoublePtrAccessor::create(
|
73 |
| - PtrAccessor::create(pushData.inputKeyAddress), |
74 |
| - PtrAccessor::create(pushData.outputKeyAddress) |
| 80 | + PtrAccessor::create(input_key_ptr), |
| 81 | + PtrAccessor::create(input_value_ptr) |
75 | 82 | );
|
76 | 83 | DoublePtrAccessor value_accessor = DoublePtrAccessor::create(
|
77 |
| - PtrAccessor::create(pushData.inputValueAddress), |
78 |
| - PtrAccessor::create(pushData.outputValueAddress) |
| 84 | + PtrAccessor::create(output_key_ptr), |
| 85 | + PtrAccessor::create(output_value_ptr) |
79 | 86 | );
|
80 |
| - PtrAccessor histogram_accessor = PtrAccessor::create(pushData.histogramAddress); |
| 87 | + PtrAccessor histogram_accessor = PtrAccessor::create(histogram_ptr); |
81 | 88 | SharedAccessor shared_accessor;
|
82 | 89 | counter.scatter(
|
83 | 90 | key_accessor,
|
|
0 commit comments