Package org.lwjgl.vulkan
Class KHRMaintenance1
- java.lang.Object
-
- org.lwjgl.vulkan.KHRMaintenance1
-
public class KHRMaintenance1 extends java.lang.Object
VK_KHR_maintenance1
adds a collection of minor features that were intentionally left out or overlooked from the original Vulkan 1.0 release.The new features are as follows:
- Allow 2D and 2D array image views to be created from 3D images, which can then be used as color framebuffer attachments. This allows applications to render to slices of a 3D image.
- Support
CmdCopyImage
between 2D array layers and 3D slices. This extension allows copying from layers of a 2D array image to slices of a 3D image and vice versa. - Allow negative height to be specified in the
VkViewport
::height
field to perform y-inversion of the clip-space to framebuffer-space transform. This allows apps to avoid having to usegl_Position.y = -gl_Position.y
in shaders also targeting other APIs. - Allow implementations to express support for doing just transfers and clears of image formats that they otherwise support no other format features for. This is done by adding new format feature flags
FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR
andFORMAT_FEATURE_TRANSFER_DST_BIT_KHR
. - Support
CmdFillBuffer
on transfer-only queues. PreviouslyCmdFillBuffer
was defined to only work on command buffers allocated from command pools which support graphics or compute queues. It is now allowed on queues that just support transfer operations. - Fix the inconsistency of how error conditions are returned between the
CreateGraphicsPipelines
andCreateComputePipelines
functions and theAllocateDescriptorSets
andAllocateCommandBuffers
functions. - Add new
ERROR_OUT_OF_POOL_MEMORY_KHR
error so implementations can give a more precise reason forAllocateDescriptorSets
failures. - Add a new command
TrimCommandPoolKHR
which gives the implementation an opportunity to release any unused command pool memory back to the system.
Promotion to Vulkan 1.1
All functionality in this extension is included in core Vulkan 1.1, with the KHR suffix omitted. The original type, enum and command names are still available as aliases of the core functionality.
- Name String
VK_KHR_maintenance1
- Extension Type
- Device extension
- Registered Extension Number
- 70
- Revision
- 2
- Extension and Version Dependencies
- Requires Vulkan 1.0
- Deprecation state
- Promoted to Vulkan 1.1
- Contact
- Piers Daniell pdaniell-nv
- Last Modified Date
- 2018-03-13
- Interactions and External Dependencies
- Promoted to Vulkan 1.1 Core
- Contributors
- Dan Ginsburg, Valve
- Daniel Koch, NVIDIA
- Daniel Rakos, AMD
- Jan-Harald Fredriksen, ARM
- Jason Ekstrand, Intel
- Jeff Bolz, NVIDIA
- Jesse Hall, Google
- John Kessenich, Google
- Michael Worcester, Imagination Technologies
- Neil Henning, Codeplay Software Ltd.
- Piers Daniell, NVIDIA
- Slawomir Grajewski, Intel
- Tobias Hector, Imagination Technologies
- Tom Olson, ARM
-
-
Field Summary
Fields Modifier and Type Field Description static int
VK_ERROR_OUT_OF_POOL_MEMORY_KHR
ExtendsVkResult
.static int
VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHRExtendsVkFormatFeatureFlagBits
.static int
VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR
ExtendsVkImageCreateFlagBits
.static java.lang.String
VK_KHR_MAINTENANCE1_EXTENSION_NAME
The extension name.static int
VK_KHR_MAINTENANCE1_SPEC_VERSION
The extension specification version.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
vkTrimCommandPoolKHR(VkDevice device, long commandPool, int flags)
SeeTrimCommandPool
.
-
-
-
Field Detail
-
VK_KHR_MAINTENANCE1_SPEC_VERSION
The extension specification version.
-
VK_KHR_MAINTENANCE1_EXTENSION_NAME
The extension name.
-
VK_ERROR_OUT_OF_POOL_MEMORY_KHR
ExtendsVkResult
.
-
VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR, VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR
ExtendsVkFormatFeatureFlagBits
.Enum values:
-
VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR
ExtendsVkImageCreateFlagBits
.
-
-
Method Detail
-
vkTrimCommandPoolKHR
public static void vkTrimCommandPoolKHR(VkDevice device, long commandPool, int flags)
SeeTrimCommandPool
.- Parameters:
device
- the logical device that owns the command pool.commandPool
- the command pool to trim.flags
- reserved for future use.
-
-