blob: db511357ea667d7a179151f4b0cd97ec3041c685 [file] [log] [blame]
include::meta/VK_IMG_filter_cubic.txt[]
*Last Modified Date*::
2016-02-23
*Contributors*::
- Tobias Hector, Imagination Technologies
`VK_IMG_filter_cubic` adds an additional, high quality cubic filtering mode
to Vulkan, using a Catmull-Rom bicubic filter.
Performing this kind of filtering can be done in a shader by using 16
samples and a number of instructions, but this can be inefficient.
The cubic filter mode exposes an optimized high quality texture sampling
using fixed texture sampling functionality.
=== New Enum Constants
* Extending elink:VkFilter:
** ename:VK_FILTER_CUBIC_IMG
* Extending elink:VkFormatFeatureFlagBits
** ename:VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG
=== Example
Creating a sampler with the new filter for both magnification and
minification
[source,c++]
----------------------------------------
VkSamplerCreateInfo createInfo =
{
VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO // sType
// Other members set to application-desired values
};
createInfo.magFilter = VK_FILTER_CUBIC_IMG;
createInfo.minFilter = VK_FILTER_CUBIC_IMG;
VkSampler sampler;
VkResult result = vkCreateSampler(
device,
&createInfo,
&sampler);
----------------------------------------
=== Version History
* Revision 1, 2016-02-23 (Tobias Hector)
- Initial version