From de69f5ad4b30fa7c33a72b3c010bf262ac090fac Mon Sep 17 00:00:00 2001 From: Swung0x48 Date: Mon, 21 Apr 2025 14:26:01 +0800 Subject: [PATCH] [Chore] (multidraw: compute): naming things --- src/main/cpp/gl/multidraw.cpp | 14 +++++++++++--- src/main/cpp/shaders/multidraw_compute.comp | 12 ++++++++++-- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/src/main/cpp/gl/multidraw.cpp b/src/main/cpp/gl/multidraw.cpp index 4917566..a8e16f0 100644 --- a/src/main/cpp/gl/multidraw.cpp +++ b/src/main/cpp/gl/multidraw.cpp @@ -265,16 +265,24 @@ layout(std430, binding = 3) writeonly buffer Output { uint out_indices[]; }; void main() { uint outIdx = gl_GlobalInvocationID.x; if (outIdx >= prefixSums[prefixSums.length() - 1]) - return; + return; // Find out draw call # int low = 0; - int l = draws.length(); - for (low = 0; low < l; ++low) { + int high = draws.length(); + for (low = 0; low < high; ++low) { if (prefixSums[low] > outIdx) { break; } } +// while (low < high) { +// int mid = low + (high - low) / 2; +// if (prefixSums[mid] > outIdx) { +// high = mid; +// } else { +// low = mid + 1; +// } +// } // figure out which index to take DrawCommand cmd = draws[low]; diff --git a/src/main/cpp/shaders/multidraw_compute.comp b/src/main/cpp/shaders/multidraw_compute.comp index e5952c0..e7750c5 100644 --- a/src/main/cpp/shaders/multidraw_compute.comp +++ b/src/main/cpp/shaders/multidraw_compute.comp @@ -22,12 +22,20 @@ void main() { // Find out draw call # int low = 0; - int l = draws.length(); - for (low = 0; low < l; ++low) { + int high = draws.length(); + for (low = 0; low < high; ++low) { if (prefixSums[low] > outIdx) { break; } } +// while (low < high) { +// int mid = low + (high - low) / 2; +// if (prefixSums[mid] > outIdx) { +// high = mid; +// } else { +// low = mid + 1; +// } +// } // figure out which index to take DrawCommand cmd = draws[low];