ogl_beamforming

Ultrasound Beamforming Implemented with OpenGL
git clone anongit@rnpnr.xyz:ogl_beamforming.git
Log | Files | Refs | Feed | Submodules | README | LICENSE

Commit: 4747c52afb2223adac069e10294f00eb7df75c79
Parent: 2cd4a3beeee1f936cf275d9aeb45cbf0870edd64
Author: Randy Palamar
Date:   Mon, 16 Mar 2026 09:51:08 -0600

shaders/coherency_weighting: drop unused "elements" push constant

Diffstat:
Mbeamformer.meta | 1-
Mbeamformer_core.c | 1-
Mgenerated/beamformer.meta.c | 2--
Mshaders/coherency_weighting.glsl | 2+-
4 files changed, 1 insertion(+), 5 deletions(-)

diff --git a/beamformer.meta b/beamformer.meta @@ -434,7 +434,6 @@ { [left_side_buffer U64] [right_side_buffer U64] - [elements U32] [scale F32] [output_size_x U32] [output_size_y U32] diff --git a/beamformer_core.c b/beamformer_core.c @@ -981,7 +981,6 @@ do_compute_shader(BeamformerCtx *ctx, VulkanHandle cmd, BeamformerComputePlan *c BeamformerCoherencyWeightingPushConstants pc = { .left_side_buffer = b->gpu_pointer + frame->buffer_offset, .right_side_buffer = b->gpu_pointer + b->size - iframe_size, - .elements = iframe_size / beamformer_data_kind_element_size[frame->data_kind], .scale = 1.0f, .output_size_x = cp->output_points.x, .output_size_y = cp->output_points.y, diff --git a/generated/beamformer.meta.c b/generated/beamformer.meta.c @@ -221,7 +221,6 @@ typedef struct { typedef struct { u64 left_side_buffer; u64 right_side_buffer; - u32 elements; f32 scale; u32 output_size_x; u32 output_size_y; @@ -660,7 +659,6 @@ read_only global s8 beamformer_shader_global_header_strings[] = { "layout(push_constant, std430) uniform PushConstants {\n" " uint64_t left_side_buffer;\n" " uint64_t right_side_buffer;\n" - " uint32_t elements;\n" " float32_t scale;\n" " uint32_t output_size_x;\n" " uint32_t output_size_y;\n" diff --git a/shaders/coherency_weighting.glsl b/shaders/coherency_weighting.glsl @@ -37,5 +37,5 @@ void main() if (!all(lessThan(out_voxel, uvec3(output_size_x, output_size_y, output_size_z)))) return; uint32_t index = output_index(out_voxel.x, out_voxel.y, out_voxel.z); - COHERENT_SAMPLE(index) *= COHERENT_SAMPLE(index) / INCOHERENT_SAMPLE(index); + COHERENT_SAMPLE(index) *= scale * COHERENT_SAMPLE(index) / INCOHERENT_SAMPLE(index); }