simvx.graphics.gpu.pipeline_compute

Compute pipeline factory.

Each compute pass previously inlined the same ~50-line block of vkCreatePipelineLayout + vkCreateComputePipelines boilerplate.

func:

create_compute_pipeline collapses that to a single call returning (pipeline, pipeline_layout, shader_module) ready for storage and later cleanup.

Module Contents

Functions

create_compute_pipeline

Compile a compute shader and build (pipeline, pipeline_layout, shader_module).

Data

API

simvx.graphics.gpu.pipeline_compute.log

‘getLogger(…)’

simvx.graphics.gpu.pipeline_compute.__all__

[‘create_compute_pipeline’]

simvx.graphics.gpu.pipeline_compute.create_compute_pipeline(device: Any, shader_path: pathlib.Path, descriptor_layouts: list[Any], push_constant_size: int = 0, *, entry_point: bytes = b'main') tuple[Any, Any, Any][source]

Compile a compute shader and build (pipeline, pipeline_layout, shader_module).

Args: device: Vulkan logical device. shader_path: Path to the .comp source file. descriptor_layouts: Descriptor set layouts to bind to slots 0..N-1. push_constant_size: Bytes of push-constant range exposed to the shader (0 = none). entry_point: Shader entry point name (defaults to main).

Returns: (pipeline, pipeline_layout, shader_module) — caller owns all three.