Vulkan-Docs/doc/specs/vulkan/man/VkImageViewCreateInfo.txt

170 lines
4.2 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// Copyright (c) 2014-2016 Khronos Group. This work is licensed under a
// Creative Commons Attribution 4.0 International License; see
// http://creativecommons.org/licenses/by/4.0/
VkImageViewCreateInfo(3)
========================
Name
----
VkImageViewCreateInfo - Structure specifying parameters of a newly created image view
C Specification
---------------
// refBegin VkImageViewCreateInfo - Structure specifying parameters of a newly created image view
The sname:VkImageViewCreateInfo structure is defined as:
include::../structs/VkImageViewCreateInfo.txt[]
Members
-------
* pname:sType is the type of this structure.
* pname:pNext is `NULL` or a pointer to an extension-specific structure.
* pname:flags is reserved for future use.
* pname:image is a sname:VkImage on which the view will be created.
* pname:viewType is the type of the image view.
* pname:format is a elink:VkFormat describing the format and type used to
interpret data elements in the image.
* pname:components specifies a remapping of color components (or of depth
or stencil components after they have been converted into color
components). See slink:VkComponentMapping.
* pname:subresourceRange selects the set of mipmap levels and array layers
to be accessible to the view.
Description
-----------
If pname:image was created with the ename:VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT
flag, pname:format can: be different from the image's format, but if they
are not equal they must: be _compatible_. Image format compatibility is
defined in the <<features-formats-compatibility-classes,Format Compatibility
Classes>> section.
[[resources-image-views-compatibility]]
.Image and image view parameter compatibility requirements
[cols="20%h,35%,45%",options="header"]
|========================================
| Dim, Arrayed, MS | Image parameters | View parameters
| 1D, 0, 0 |
imageType = IMAGE_TYPE_1D +
width >= 1 +
height = 1 +
depth = 1 +
arrayLayers >= 1 +
samples = 1 |
viewType = VIEW_TYPE_1D +
baseArrayLayer >= 0 +
arrayLayers = 1
| 1D, 1, 0 |
imageType = IMAGE_TYPE_1D +
width >= 1 +
height = 1 +
depth = 1 +
arrayLayers >= 1 +
samples = 1 |
viewType = VIEW_TYPE_1D_ARRAY +
baseArrayLayer >= 0 +
arrayLayers >= 1
| 2D, 0, 0 |
imageType = IMAGE_TYPE_2D +
width >= 1 +
height >= 1 +
depth = 1 +
arrayLayers >= 1 +
samples = 1 |
viewType = VIEW_TYPE_2D +
baseArrayLayer >= 0 +
arrayLayers = 1
| 2D, 1, 0 |
imageType = IMAGE_TYPE_2D +
width >= 1 +
height >= 1 +
depth = 1 +
arrayLayers >= 1 +
samples = 1 |
viewType = VIEW_TYPE_2D_ARRAY +
baseArrayLayer >= 0 +
arrayLayers >= 1
| 2D, 0, 1 |
imageType = IMAGE_TYPE_2D +
width >= 1 +
height >= 1 +
depth = 1 +
arrayLayers >= 1 +
samples > 1 |
viewType = VIEW_TYPE_2D +
baseArrayLayer >= 0 +
arrayLayers = 1
| 2D, 1, 1 |
imageType = IMAGE_TYPE_2D +
width >= 1 +
height >= 1 +
depth = 1 +
arrayLayers >= 1 +
samples > 1 |
viewType = VIEW_TYPE_2D_ARRAY +
baseArrayLayer >= 0 +
arrayLayers >= 1
| CUBE, 0, 0 |
imageType = IMAGE_TYPE_2D +
width >= 1 +
height = width +
depth = 1 +
arrayLayers >= 6 +
samples = 1 +
flags include ename:VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT |
viewType = VIEW_TYPE_CUBE +
baseArrayLayer >= 0 +
arrayLayers = 6
| CUBE, 1, 0 |
imageType = IMAGE_TYPE_2D +
width >= 1 +
height = width +
depth = 1 +
arrayLayers >= 6×N +
samples = 1 +
flags include ename:VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT |
viewType = VIEW_TYPE_CUBE_ARRAY +
baseArrayLayer >= 0 +
arrayLayers = 6×N
| 3D, 0, 0 |
imageType = IMAGE_TYPE_3D +
width >= 1 +
height >= 1 +
depth >= 1 +
arrayLayers = 1 +
samples = 1 |
viewType = VIEW_TYPE_3D +
baseArrayLayer = 0 +
arrayLayers = 1
|========================================
The pname:subresourceRange member is of type slink:VkImageSubresourceRange.
include::../validity/structs/VkImageViewCreateInfo.txt[]
See Also
--------
slink:VkComponentMapping, elink:VkFormat, slink:VkImage, slink:VkImageSubresourceRange, elink:VkImageViewCreateFlags, elink:VkImageViewType, elink:VkStructureType, flink:vkCreateImageView
Document Notes
--------------
For more information, see the Vulkan Specification at URL
https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html#VkImageViewCreateInfo
This page is extracted from the Vulkan Specification.
Fixes and changes should be made to the Specification,not directly.
include::footer.txt[]