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

95 lines
2.9 KiB
Plaintext

// 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/
VkComponentMapping(3)
=====================
Name
----
VkComponentMapping - Structure specifying a color component mapping
C Specification
---------------
// refBegin VkComponentMapping - Structure specifying a color component mapping
The sname:VkComponentMapping structure is defined as:
include::../api/structs/VkComponentMapping.txt[]
Members
-------
* pname:r determines the component value placed in the R component of the
output vector.
* pname:g determines the component value placed in the G component of the
output vector.
* pname:b determines the component value placed in the B component of the
output vector.
* pname:a determines the component value placed in the A component of the
output vector.
Description
-----------
Each of pname:r, pname:g, pname:b, and pname:a is one of the values:
// refBegin VkComponentSwizzle - specify how a component is swizzled
include::../api/enums/VkComponentSwizzle.txt[]
* ename:VK_COMPONENT_SWIZZLE_IDENTITY: the component is set to the
identity swizzle.
* ename:VK_COMPONENT_SWIZZLE_ZERO: the component is set to zero.
* ename:VK_COMPONENT_SWIZZLE_ONE: the component is set to either 1 or 1.0
depending on whether the type of the image view format is integer or
floating-point respectively, as determined by the
<<features-formats-definition,Format Definition>> section for each
elink:VkFormat.
* ename:VK_COMPONENT_SWIZZLE_R: the component is set to the value
of the R component of the image.
* ename:VK_COMPONENT_SWIZZLE_G: the component is set to the value
of the G component of the image.
* ename:VK_COMPONENT_SWIZZLE_B: the component is set to the value
of the B component of the image.
* ename:VK_COMPONENT_SWIZZLE_A: the component is set to the value
of the A component of the image.
Setting the identity swizzle on a component is equivalent to setting the
identity mapping on that component. That is:
[[resources-image-views-identity-mappings]]
.Component Mappings Equivalent To ename:VK_COMPONENT_SWIZZLE_IDENTITY
[options="header"]
|====
| Component | Identity Mapping
| pname:components.r | ename:VK_COMPONENT_SWIZZLE_R
| pname:components.g | ename:VK_COMPONENT_SWIZZLE_G
| pname:components.b | ename:VK_COMPONENT_SWIZZLE_B
| pname:components.a | ename:VK_COMPONENT_SWIZZLE_A
|====
include::../validity/structs/VkComponentMapping.txt[]
See Also
--------
elink:VkComponentSwizzle, slink:VkImageViewCreateInfo
Document Notes
--------------
For more information, see the Vulkan Specification at URL
https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html#VkComponentMapping
This page is extracted from the Vulkan Specification.
Fixes and changes should be made to the Specification,not directly.
include::footer.txt[]