Function Prototype

vkCreateSampler

Create a new sampler object

To create a sampler object, call:

VkResult vkCreateSampler(
    VkDevice device,
    const VkSamplerCreateInfo* pCreateInfo,
    const VkAllocationCallbacks* pAllocator,
    VkSampler* pSampler);
  • device is the logical device that creates the sampler.
  • pCreateInfo is a pointer to a VkSamplerCreateInfo structure specifying the state of the sampler object.
  • pAllocator controls host memory allocation as described in the Memory Allocation chapter.
  • pSampler is a pointer to a VkSampler handle in which the resulting sampler object is returned.

Valid Usage

VUID-vkCreateSampler-device-09668

device must support at least one queue family with one of the VK_QUEUE_COMPUTE_BIT or VK_QUEUE_GRAPHICS_BIT capabilities

VUID-vkCreateSampler-maxSamplerAllocationCount-04110

There must be less than VkPhysicalDeviceLimits::maxSamplerAllocationCount

VkSampler objects currently created on the device

Valid Usage (Implicit)

VUID-vkCreateSampler-device-parameter

device must be a valid VkDevice handle

VUID-vkCreateSampler-pCreateInfo-parameter

pCreateInfo must be a valid pointer to a valid VkSamplerCreateInfo structure

VUID-vkCreateSampler-pAllocator-parameter

If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure

VUID-vkCreateSampler-pSampler-parameter

pSampler must be a valid pointer to a VkSampler handle