Skip to content

Support static/immutable Samplers #69

@crud89

Description

@crud89

Often times sampler states are not required to be altered and can be already described when defining the descriptor set layout and pipeline layout respectively. Such samplers are called static samplers in DirectX and immutable samplers in Vulkan. It is not allowed to bind something to their descriptor during runtime. Instead they are automatically bound when a pipeline gets used.

Static samplers require a descriptor definition within a descriptor set. Hence they should be of type DescriptorType::Sampler. To differentiate between static and dynamic samplers, a descriptor layout must be able to store a sampler state. If this sampler state is set and the descriptor type marks a sampler, the descriptor itself describes a static sampler. Other than dynamic descriptors, static samplers should not be count when allocating or binding descriptors.

Metadata

Metadata

Assignees

Labels

DX12 ❎The issue involves the DX12 backend.FeatureNew feature or request.Priority: MediumA issue with normal priority.Vulkan 🌋The issue involves the Vulkan backend.

Projects

Status

v0.3.1

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions