mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-02-20 01:58:06 +00:00
* Update release number to 97. Public Issues: * Add a special case to the <<renderpass-compatibility, Render Pass Compatibility>> rules allowing single-subpass renderpasses to be compatible even if they have different resolve attachment references (public issue 835). * Fix the miss shader binding table record address rule in the <<shader-binding-table-indexing-rules, Miss Shaders>> section to index by code:missIndex, not code:sbtOffset (public issue 875). Internal Issues: * Add a missing anchor to the elink:VkSamplerCreateFlagBits language (internal issue 1483). * Add missing implicit valid usage include for slink:VkHdrMetadataEXT and corresponding `noautovalidity` attributes in `vk.xml` for the externally-defined metadata properties (internal issue 1514). * Remove restrictions on the `mask` parameter of SPIR-V's code:OpGroupNonUniformXor in the <<spirvenv-module-validation, Validation Rules within a Module>> appendix (internal merge request 2971). * Restore `noautovalidity` attribute for slink:VkPipelineViewportWScalingStateCreateInfoNV::pname:pViewportWScalings in `vk.xml` (internal merge request 2975). * Update copyright dates on Khronos-copyrighted files to 2019 (internal merge request 2980). New Extensions: * `VK_KHR_depth_stencil_resolve` * `VK_EXT_buffer_device_address` * `VK_EXT_memory_budget` * `VK_EXT_memory_priority` * `VK_EXT_validation_features`
56 lines
1.8 KiB
Plaintext
56 lines
1.8 KiB
Plaintext
// Copyright (c) 2014-2019 Khronos Group. This work is licensed under a
|
|
// Creative Commons Attribution 4.0 International License; see
|
|
// http://creativecommons.org/licenses/by/4.0/
|
|
|
|
include::meta/VK_KHR_sampler_mirror_clamp_to_edge.txt[]
|
|
|
|
*Last Modified Date*::
|
|
2016-02-16
|
|
*Contributors*::
|
|
- Tobias Hector, Imagination Technologies
|
|
|
|
`VK_KHR_sampler_mirror_clamp_to_edge` extends the set of sampler address
|
|
modes to include an additional mode
|
|
(ename:VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE) that effectively uses a
|
|
texture map twice as large as the original image in which the additional
|
|
half of the new image is a mirror image of the original image.
|
|
|
|
This new mode relaxes the need to generate images whose opposite edges match
|
|
by using the original image to generate a matching "`mirror image`".
|
|
This mode allows the texture to be mirrored only once in the negative s, t,
|
|
and r directions.
|
|
|
|
=== New Enum Constants
|
|
|
|
* Extending elink:VkSamplerAddressMode:
|
|
** ename:VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE
|
|
|
|
=== Example
|
|
|
|
Creating a sampler with the new address mode in each dimension
|
|
|
|
|
|
[source,c++]
|
|
----------------------------------------
|
|
VkSamplerCreateInfo createInfo =
|
|
{
|
|
VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO // sType
|
|
// Other members set to application-desired values
|
|
};
|
|
|
|
createInfo.addressModeU = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE;
|
|
createInfo.addressModeV = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE;
|
|
createInfo.addressModeW = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE;
|
|
|
|
VkSampler sampler;
|
|
VkResult result = vkCreateSampler(
|
|
device,
|
|
&createInfo,
|
|
&sampler);
|
|
----------------------------------------
|
|
|
|
=== Version History
|
|
|
|
* Revision 1, 2016-02-16 (Tobias Hector)
|
|
- Initial draft
|