Class VkPhysicalDeviceFeatures
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
See Also
VkDeviceCreateInfo, VkPhysicalDeviceFeatures2, GetPhysicalDeviceFeatures
Layout
struct VkPhysicalDeviceFeatures {
VkBool32 robustBufferAccess();
VkBool32 fullDrawIndexUint32();
VkBool32 imageCubeArray();
VkBool32 independentBlend();
VkBool32 geometryShader();
VkBool32 tessellationShader();
VkBool32 sampleRateShading();
VkBool32 dualSrcBlend();
VkBool32 logicOp();
VkBool32 multiDrawIndirect();
VkBool32 drawIndirectFirstInstance();
VkBool32 depthClamp();
VkBool32 depthBiasClamp();
VkBool32 fillModeNonSolid();
VkBool32 depthBounds();
VkBool32 wideLines();
VkBool32 largePoints();
VkBool32 alphaToOne();
VkBool32 multiViewport();
VkBool32 samplerAnisotropy();
VkBool32 textureCompressionETC2();
VkBool32 textureCompressionASTC_LDR();
VkBool32 textureCompressionBC();
VkBool32 occlusionQueryPrecise();
VkBool32 pipelineStatisticsQuery();
VkBool32 vertexPipelineStoresAndAtomics();
VkBool32 fragmentStoresAndAtomics();
VkBool32 shaderTessellationAndGeometryPointSize();
VkBool32 shaderImageGatherExtended();
VkBool32 shaderStorageImageExtendedFormats();
VkBool32 shaderStorageImageMultisample();
VkBool32 shaderStorageImageReadWithoutFormat();
VkBool32 shaderStorageImageWriteWithoutFormat();
VkBool32 shaderUniformBufferArrayDynamicIndexing();
VkBool32 shaderSampledImageArrayDynamicIndexing();
VkBool32 shaderStorageBufferArrayDynamicIndexing();
VkBool32 shaderStorageImageArrayDynamicIndexing();
VkBool32 shaderClipDistance();
VkBool32 shaderCullDistance();
VkBool32 shaderFloat64();
VkBool32 shaderInt64();
VkBool32 shaderInt16();
VkBool32 shaderResourceResidency();
VkBool32 shaderResourceMinLod();
VkBool32 sparseBinding();
VkBool32 sparseResidencyBuffer();
VkBool32 sparseResidencyImage2D();
VkBool32 sparseResidencyImage3D();
VkBool32 sparseResidency2Samples();
VkBool32 sparseResidency4Samples();
VkBool32 sparseResidency8Samples();
VkBool32 sparseResidency16Samples();
VkBool32 sparseResidencyAliased();
VkBool32 variableMultisampleRate();
VkBool32 inheritedQueries();
}-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionVkPhysicalDeviceFeatures(ByteBuffer container) Creates aVkPhysicalDeviceFeaturesinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionbooleanspecifies whether the implementation is able to replace the alpha value of the fragment shader color output in the Multisample Coverage fragment operation.alphaToOne(boolean value) Sets the specified value to thealphaToOne()field.static VkPhysicalDeviceFeaturescalloc()Returns a newVkPhysicalDeviceFeaturesinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkPhysicalDeviceFeatures.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceFeatures.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceFeaturescalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceFeaturesinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceFeaturesDeprecated.callocStack(int capacity) Deprecated.callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.static VkPhysicalDeviceFeaturescallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.static VkPhysicalDeviceFeaturescreate()Returns a newVkPhysicalDeviceFeaturesinstance allocated withBufferUtils.create(int capacity) Returns a newVkPhysicalDeviceFeatures.Bufferinstance allocated withBufferUtils.static VkPhysicalDeviceFeaturescreate(long address) Returns a newVkPhysicalDeviceFeaturesinstance for the specified memory address.create(long address, int capacity) Create aVkPhysicalDeviceFeatures.Bufferinstance at the specified memory.static @Nullable VkPhysicalDeviceFeaturescreateSafe(long address) static @Nullable VkPhysicalDeviceFeatures.BuffercreateSafe(long address, int capacity) booleanspecifies whether depth bias clamping is supported.depthBiasClamp(boolean value) Sets the specified value to thedepthBiasClamp()field.booleanspecifies whether depth bounds tests are supported.depthBounds(boolean value) Sets the specified value to thedepthBounds()field.booleanspecifies whether depth clamping is supported.depthClamp(boolean value) Sets the specified value to thedepthClamp()field.booleanspecifies whether indirect drawing calls support thefirstInstanceparameter.drawIndirectFirstInstance(boolean value) Sets the specified value to thedrawIndirectFirstInstance()field.booleanspecifies whether blend operations which take two sources are supported.dualSrcBlend(boolean value) Sets the specified value to thedualSrcBlend()field.booleanspecifies whether point and wireframe fill modes are supported.fillModeNonSolid(boolean value) Sets the specified value to thefillModeNonSolid()field.booleanspecifies whether storage buffers and images support stores and atomic operations in the fragment shader stage.fragmentStoresAndAtomics(boolean value) Sets the specified value to thefragmentStoresAndAtomics()field.booleanspecifies the full 32-bit range of indices is supported for indexed draw calls when using aVkIndexTypeofINDEX_TYPE_UINT32.fullDrawIndexUint32(boolean value) Sets the specified value to thefullDrawIndexUint32()field.booleanspecifies whether geometry shaders are supported.geometryShader(boolean value) Sets the specified value to thegeometryShader()field.booleanspecifies whether image views with aVkImageViewTypeofIMAGE_VIEW_TYPE_CUBE_ARRAYcan be created, and that the correspondingSampledCubeArrayandImageCubeArraySPIR-V capabilities can be used in shader code.imageCubeArray(boolean value) Sets the specified value to theimageCubeArray()field.booleanspecifies whether theVkPipelineColorBlendAttachmentStatesettings are controlled independently per-attachment.independentBlend(boolean value) Sets the specified value to theindependentBlend()field.booleanspecifies whether a secondary command buffer may be executed while a query is active.inheritedQueries(boolean value) Sets the specified value to theinheritedQueries()field.booleanspecifies whether points with size greater than 1.0 are supported.largePoints(boolean value) Sets the specified value to thelargePoints()field.booleanlogicOp()specifies whether logic operations are supported.logicOp(boolean value) Sets the specified value to thelogicOp()field.static VkPhysicalDeviceFeaturesmalloc()Returns a newVkPhysicalDeviceFeaturesinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkPhysicalDeviceFeatures.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceFeatures.Bufferinstance allocated on the specifiedMemoryStack.static VkPhysicalDeviceFeaturesmalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceFeaturesinstance allocated on the specifiedMemoryStack.static VkPhysicalDeviceFeaturesDeprecated.mallocStack(int capacity) Deprecated.mallocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.static VkPhysicalDeviceFeaturesmallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.booleanspecifies whether multiple draw indirect is supported.multiDrawIndirect(boolean value) Sets the specified value to themultiDrawIndirect()field.booleanspecifies whether more than one viewport is supported.multiViewport(boolean value) Sets the specified value to themultiViewport()field.static intnalphaToOne(long struct) Unsafe version ofalphaToOne().static voidnalphaToOne(long struct, int value) Unsafe version ofalphaToOne.static intndepthBiasClamp(long struct) Unsafe version ofdepthBiasClamp().static voidndepthBiasClamp(long struct, int value) Unsafe version ofdepthBiasClamp.static intndepthBounds(long struct) Unsafe version ofdepthBounds().static voidndepthBounds(long struct, int value) Unsafe version ofdepthBounds.static intndepthClamp(long struct) Unsafe version ofdepthClamp().static voidndepthClamp(long struct, int value) Unsafe version ofdepthClamp.static intndrawIndirectFirstInstance(long struct) Unsafe version ofdrawIndirectFirstInstance().static voidndrawIndirectFirstInstance(long struct, int value) Unsafe version ofdrawIndirectFirstInstance.static intndualSrcBlend(long struct) Unsafe version ofdualSrcBlend().static voidndualSrcBlend(long struct, int value) Unsafe version ofdualSrcBlend.static intnfillModeNonSolid(long struct) Unsafe version offillModeNonSolid().static voidnfillModeNonSolid(long struct, int value) Unsafe version offillModeNonSolid.static intnfragmentStoresAndAtomics(long struct) Unsafe version offragmentStoresAndAtomics().static voidnfragmentStoresAndAtomics(long struct, int value) Unsafe version offragmentStoresAndAtomics.static intnfullDrawIndexUint32(long struct) Unsafe version offullDrawIndexUint32().static voidnfullDrawIndexUint32(long struct, int value) Unsafe version offullDrawIndexUint32.static intngeometryShader(long struct) Unsafe version ofgeometryShader().static voidngeometryShader(long struct, int value) Unsafe version ofgeometryShader.static intnimageCubeArray(long struct) Unsafe version ofimageCubeArray().static voidnimageCubeArray(long struct, int value) Unsafe version ofimageCubeArray.static intnindependentBlend(long struct) Unsafe version ofindependentBlend().static voidnindependentBlend(long struct, int value) Unsafe version ofindependentBlend.static intninheritedQueries(long struct) Unsafe version ofinheritedQueries().static voidninheritedQueries(long struct, int value) Unsafe version ofinheritedQueries.static intnlargePoints(long struct) Unsafe version oflargePoints().static voidnlargePoints(long struct, int value) Unsafe version oflargePoints.static intnlogicOp(long struct) Unsafe version oflogicOp().static voidnlogicOp(long struct, int value) Unsafe version oflogicOp.static intnmultiDrawIndirect(long struct) Unsafe version ofmultiDrawIndirect().static voidnmultiDrawIndirect(long struct, int value) Unsafe version ofmultiDrawIndirect.static intnmultiViewport(long struct) Unsafe version ofmultiViewport().static voidnmultiViewport(long struct, int value) Unsafe version ofmultiViewport.static intnocclusionQueryPrecise(long struct) Unsafe version ofocclusionQueryPrecise().static voidnocclusionQueryPrecise(long struct, int value) Unsafe version ofocclusionQueryPrecise.static intnpipelineStatisticsQuery(long struct) Unsafe version ofpipelineStatisticsQuery().static voidnpipelineStatisticsQuery(long struct, int value) Unsafe version ofpipelineStatisticsQuery.static intnrobustBufferAccess(long struct) Unsafe version ofrobustBufferAccess().static voidnrobustBufferAccess(long struct, int value) Unsafe version ofrobustBufferAccess.static intnsamplerAnisotropy(long struct) Unsafe version ofsamplerAnisotropy().static voidnsamplerAnisotropy(long struct, int value) Unsafe version ofsamplerAnisotropy.static intnsampleRateShading(long struct) Unsafe version ofsampleRateShading().static voidnsampleRateShading(long struct, int value) Unsafe version ofsampleRateShading.static intnshaderClipDistance(long struct) Unsafe version ofshaderClipDistance().static voidnshaderClipDistance(long struct, int value) Unsafe version ofshaderClipDistance.static intnshaderCullDistance(long struct) Unsafe version ofshaderCullDistance().static voidnshaderCullDistance(long struct, int value) Unsafe version ofshaderCullDistance.static intnshaderFloat64(long struct) Unsafe version ofshaderFloat64().static voidnshaderFloat64(long struct, int value) Unsafe version ofshaderFloat64.static intnshaderImageGatherExtended(long struct) Unsafe version ofshaderImageGatherExtended().static voidnshaderImageGatherExtended(long struct, int value) Unsafe version ofshaderImageGatherExtended.static intnshaderInt16(long struct) Unsafe version ofshaderInt16().static voidnshaderInt16(long struct, int value) Unsafe version ofshaderInt16.static intnshaderInt64(long struct) Unsafe version ofshaderInt64().static voidnshaderInt64(long struct, int value) Unsafe version ofshaderInt64.static intnshaderResourceMinLod(long struct) Unsafe version ofshaderResourceMinLod().static voidnshaderResourceMinLod(long struct, int value) Unsafe version ofshaderResourceMinLod.static intnshaderResourceResidency(long struct) Unsafe version ofshaderResourceResidency().static voidnshaderResourceResidency(long struct, int value) Unsafe version ofshaderResourceResidency.static intnshaderSampledImageArrayDynamicIndexing(long struct) Unsafe version ofshaderSampledImageArrayDynamicIndexing().static voidnshaderSampledImageArrayDynamicIndexing(long struct, int value) Unsafe version ofshaderSampledImageArrayDynamicIndexing.static intnshaderStorageBufferArrayDynamicIndexing(long struct) Unsafe version ofshaderStorageBufferArrayDynamicIndexing().static voidnshaderStorageBufferArrayDynamicIndexing(long struct, int value) Unsafe version ofshaderStorageBufferArrayDynamicIndexing.static intnshaderStorageImageArrayDynamicIndexing(long struct) Unsafe version ofshaderStorageImageArrayDynamicIndexing().static voidnshaderStorageImageArrayDynamicIndexing(long struct, int value) Unsafe version ofshaderStorageImageArrayDynamicIndexing.static intnshaderStorageImageExtendedFormats(long struct) Unsafe version ofshaderStorageImageExtendedFormats().static voidnshaderStorageImageExtendedFormats(long struct, int value) Unsafe version ofshaderStorageImageExtendedFormats.static intnshaderStorageImageMultisample(long struct) Unsafe version ofshaderStorageImageMultisample().static voidnshaderStorageImageMultisample(long struct, int value) Unsafe version ofshaderStorageImageMultisample.static intnshaderStorageImageReadWithoutFormat(long struct) Unsafe version ofshaderStorageImageReadWithoutFormat().static voidnshaderStorageImageReadWithoutFormat(long struct, int value) Unsafe version ofshaderStorageImageReadWithoutFormat.static intnshaderStorageImageWriteWithoutFormat(long struct) Unsafe version ofshaderStorageImageWriteWithoutFormat().static voidnshaderStorageImageWriteWithoutFormat(long struct, int value) Unsafe version ofshaderStorageImageWriteWithoutFormat.static intnshaderTessellationAndGeometryPointSize(long struct) Unsafe version ofshaderTessellationAndGeometryPointSize().static voidnshaderTessellationAndGeometryPointSize(long struct, int value) Unsafe version ofshaderTessellationAndGeometryPointSize.static intnshaderUniformBufferArrayDynamicIndexing(long struct) Unsafe version ofshaderUniformBufferArrayDynamicIndexing().static voidnshaderUniformBufferArrayDynamicIndexing(long struct, int value) Unsafe version ofshaderUniformBufferArrayDynamicIndexing.static intnsparseBinding(long struct) Unsafe version ofsparseBinding().static voidnsparseBinding(long struct, int value) Unsafe version ofsparseBinding.static intnsparseResidency16Samples(long struct) Unsafe version ofsparseResidency16Samples().static voidnsparseResidency16Samples(long struct, int value) Unsafe version ofsparseResidency16Samples.static intnsparseResidency2Samples(long struct) Unsafe version ofsparseResidency2Samples().static voidnsparseResidency2Samples(long struct, int value) Unsafe version ofsparseResidency2Samples.static intnsparseResidency4Samples(long struct) Unsafe version ofsparseResidency4Samples().static voidnsparseResidency4Samples(long struct, int value) Unsafe version ofsparseResidency4Samples.static intnsparseResidency8Samples(long struct) Unsafe version ofsparseResidency8Samples().static voidnsparseResidency8Samples(long struct, int value) Unsafe version ofsparseResidency8Samples.static intnsparseResidencyAliased(long struct) Unsafe version ofsparseResidencyAliased().static voidnsparseResidencyAliased(long struct, int value) Unsafe version ofsparseResidencyAliased.static intnsparseResidencyBuffer(long struct) Unsafe version ofsparseResidencyBuffer().static voidnsparseResidencyBuffer(long struct, int value) Unsafe version ofsparseResidencyBuffer.static intnsparseResidencyImage2D(long struct) Unsafe version ofsparseResidencyImage2D().static voidnsparseResidencyImage2D(long struct, int value) Unsafe version ofsparseResidencyImage2D.static intnsparseResidencyImage3D(long struct) Unsafe version ofsparseResidencyImage3D().static voidnsparseResidencyImage3D(long struct, int value) Unsafe version ofsparseResidencyImage3D.static intntessellationShader(long struct) Unsafe version oftessellationShader().static voidntessellationShader(long struct, int value) Unsafe version oftessellationShader.static intntextureCompressionASTC_LDR(long struct) Unsafe version oftextureCompressionASTC_LDR().static voidntextureCompressionASTC_LDR(long struct, int value) Unsafe version oftextureCompressionASTC_LDR.static intntextureCompressionBC(long struct) Unsafe version oftextureCompressionBC().static voidntextureCompressionBC(long struct, int value) Unsafe version oftextureCompressionBC.static intntextureCompressionETC2(long struct) Unsafe version oftextureCompressionETC2().static voidntextureCompressionETC2(long struct, int value) Unsafe version oftextureCompressionETC2.static intnvariableMultisampleRate(long struct) Unsafe version ofvariableMultisampleRate().static voidnvariableMultisampleRate(long struct, int value) Unsafe version ofvariableMultisampleRate.static intnvertexPipelineStoresAndAtomics(long struct) Unsafe version ofvertexPipelineStoresAndAtomics().static voidnvertexPipelineStoresAndAtomics(long struct, int value) Unsafe version ofvertexPipelineStoresAndAtomics.static intnwideLines(long struct) Unsafe version ofwideLines().static voidnwideLines(long struct, int value) Unsafe version ofwideLines.booleanspecifies whether occlusion queries returning actual sample counts are supported.occlusionQueryPrecise(boolean value) Sets the specified value to theocclusionQueryPrecise()field.booleanspecifies whether the pipeline statistics queries are supported.pipelineStatisticsQuery(boolean value) Sets the specified value to thepipelineStatisticsQuery()field.booleanspecifies that accesses to buffers are bounds-checked against the range of the buffer descriptor (as determined byVkDescriptorBufferInfo::range,VkBufferViewCreateInfo::range, or the size of the buffer).robustBufferAccess(boolean value) Sets the specified value to therobustBufferAccess()field.booleanspecifies whether anisotropic filtering is supported.samplerAnisotropy(boolean value) Sets the specified value to thesamplerAnisotropy()field.booleanspecifies whether Sample Shading and multisample interpolation are supported.sampleRateShading(boolean value) Sets the specified value to thesampleRateShading()field.set(boolean robustBufferAccess, boolean fullDrawIndexUint32, boolean imageCubeArray, boolean independentBlend, boolean geometryShader, boolean tessellationShader, boolean sampleRateShading, boolean dualSrcBlend, boolean logicOp, boolean multiDrawIndirect, boolean drawIndirectFirstInstance, boolean depthClamp, boolean depthBiasClamp, boolean fillModeNonSolid, boolean depthBounds, boolean wideLines, boolean largePoints, boolean alphaToOne, boolean multiViewport, boolean samplerAnisotropy, boolean textureCompressionETC2, boolean textureCompressionASTC_LDR, boolean textureCompressionBC, boolean occlusionQueryPrecise, boolean pipelineStatisticsQuery, boolean vertexPipelineStoresAndAtomics, boolean fragmentStoresAndAtomics, boolean shaderTessellationAndGeometryPointSize, boolean shaderImageGatherExtended, boolean shaderStorageImageExtendedFormats, boolean shaderStorageImageMultisample, boolean shaderStorageImageReadWithoutFormat, boolean shaderStorageImageWriteWithoutFormat, boolean shaderUniformBufferArrayDynamicIndexing, boolean shaderSampledImageArrayDynamicIndexing, boolean shaderStorageBufferArrayDynamicIndexing, boolean shaderStorageImageArrayDynamicIndexing, boolean shaderClipDistance, boolean shaderCullDistance, boolean shaderFloat64, boolean shaderInt64, boolean shaderInt16, boolean shaderResourceResidency, boolean shaderResourceMinLod, boolean sparseBinding, boolean sparseResidencyBuffer, boolean sparseResidencyImage2D, boolean sparseResidencyImage3D, boolean sparseResidency2Samples, boolean sparseResidency4Samples, boolean sparseResidency8Samples, boolean sparseResidency16Samples, boolean sparseResidencyAliased, boolean variableMultisampleRate, boolean inheritedQueries) Initializes this struct with the specified values.Copies the specified struct data to this struct.booleanspecifies whether clip distances are supported in shader code.shaderClipDistance(boolean value) Sets the specified value to theshaderClipDistance()field.booleanspecifies whether cull distances are supported in shader code.shaderCullDistance(boolean value) Sets the specified value to theshaderCullDistance()field.booleanspecifies whether 64-bit floats (doubles) are supported in shader code.shaderFloat64(boolean value) Sets the specified value to theshaderFloat64()field.booleanspecifies whether the extended set of image gather instructions are available in shader code.shaderImageGatherExtended(boolean value) Sets the specified value to theshaderImageGatherExtended()field.booleanspecifies whether 16-bit integers (signed and unsigned) are supported in shader code.shaderInt16(boolean value) Sets the specified value to theshaderInt16()field.booleanspecifies whether 64-bit integers (signed and unsigned) are supported in shader code.shaderInt64(boolean value) Sets the specified value to theshaderInt64()field.booleanspecifies whether image operations specifying the minimum resource LOD are supported in shader code.shaderResourceMinLod(boolean value) Sets the specified value to theshaderResourceMinLod()field.booleanspecifies whether image operations that return resource residency information are supported in shader code.shaderResourceResidency(boolean value) Sets the specified value to theshaderResourceResidency()field.booleanspecifies whether arrays of samplers or sampled images can be indexed by integer expressions that are dynamically uniform within either the subgroup or the invocation group in shader code.shaderSampledImageArrayDynamicIndexing(boolean value) Sets the specified value to theshaderSampledImageArrayDynamicIndexing()field.booleanspecifies whether arrays of storage buffers can be indexed by integer expressions that are dynamically uniform within either the subgroup or the invocation group in shader code.shaderStorageBufferArrayDynamicIndexing(boolean value) Sets the specified value to theshaderStorageBufferArrayDynamicIndexing()field.booleanspecifies whether arrays of storage images can be indexed by integer expressions that are dynamically uniform within either the subgroup or the invocation group in shader code.shaderStorageImageArrayDynamicIndexing(boolean value) Sets the specified value to theshaderStorageImageArrayDynamicIndexing()field.booleanspecifies whether all the “storage image extended formats” below are supported; if this feature is supported, then theFORMAT_FEATURE_STORAGE_IMAGE_BITmust be supported inoptimalTilingFeaturesfor the following formats:FORMAT_R16G16_SFLOATFORMAT_B10G11R11_UFLOAT_PACK32FORMAT_R16_SFLOATFORMAT_R16G16B16A16_UNORMFORMAT_A2B10G10R10_UNORM_PACK32FORMAT_R16G16_UNORMFORMAT_R8G8_UNORMFORMAT_R16_UNORMFORMAT_R8_UNORMFORMAT_R16G16B16A16_SNORMFORMAT_R16G16_SNORMFORMAT_R8G8_SNORMFORMAT_R16_SNORMFORMAT_R8_SNORMFORMAT_R16G16_SINTFORMAT_R8G8_SINTFORMAT_R16_SINTFORMAT_R8_SINTFORMAT_A2B10G10R10_UINT_PACK32FORMAT_R16G16_UINTFORMAT_R8G8_UINTFORMAT_R16_UINTFORMAT_R8_UINTshaderStorageImageExtendedFormats(boolean value) Sets the specified value to theshaderStorageImageExtendedFormats()field.booleanspecifies whether multisampled storage images are supported.shaderStorageImageMultisample(boolean value) Sets the specified value to theshaderStorageImageMultisample()field.booleanspecifies whether storage images and storage texel buffers require a format qualifier to be specified when reading.shaderStorageImageReadWithoutFormat(boolean value) Sets the specified value to theshaderStorageImageReadWithoutFormat()field.booleanspecifies whether storage images and storage texel buffers require a format qualifier to be specified when writing.shaderStorageImageWriteWithoutFormat(boolean value) Sets the specified value to theshaderStorageImageWriteWithoutFormat()field.booleanspecifies whether thePointSizebuilt-in decoration is available in the tessellation control, tessellation evaluation, and geometry shader stages.shaderTessellationAndGeometryPointSize(boolean value) Sets the specified value to theshaderTessellationAndGeometryPointSize()field.booleanspecifies whether arrays of uniform buffers can be indexed by integer expressions that are dynamically uniform within either the subgroup or the invocation group in shader code.shaderUniformBufferArrayDynamicIndexing(boolean value) Sets the specified value to theshaderUniformBufferArrayDynamicIndexing()field.intsizeof()booleanspecifies whether resource memory can be managed at opaque sparse block level instead of at the object level.sparseBinding(boolean value) Sets the specified value to thesparseBinding()field.booleanspecifies whether the physical device can access partially resident 2D images with 16 samples per pixel.sparseResidency16Samples(boolean value) Sets the specified value to thesparseResidency16Samples()field.booleanspecifies whether the physical device can access partially resident 2D images with 2 samples per pixel.sparseResidency2Samples(boolean value) Sets the specified value to thesparseResidency2Samples()field.booleanspecifies whether the physical device can access partially resident 2D images with 4 samples per pixel.sparseResidency4Samples(boolean value) Sets the specified value to thesparseResidency4Samples()field.booleanspecifies whether the physical device can access partially resident 2D images with 8 samples per pixel.sparseResidency8Samples(boolean value) Sets the specified value to thesparseResidency8Samples()field.booleanspecifies whether the physical device can correctly access data aliased into multiple locations.sparseResidencyAliased(boolean value) Sets the specified value to thesparseResidencyAliased()field.booleanspecifies whether the device can access partially resident buffers.sparseResidencyBuffer(boolean value) Sets the specified value to thesparseResidencyBuffer()field.booleanspecifies whether the device can access partially resident 2D images with 1 sample per pixel.sparseResidencyImage2D(boolean value) Sets the specified value to thesparseResidencyImage2D()field.booleanspecifies whether the device can access partially resident 3D images.sparseResidencyImage3D(boolean value) Sets the specified value to thesparseResidencyImage3D()field.booleanspecifies whether tessellation control and evaluation shaders are supported.tessellationShader(boolean value) Sets the specified value to thetessellationShader()field.booleanspecifies whether all of the ASTC LDR compressed texture formats are supported.textureCompressionASTC_LDR(boolean value) Sets the specified value to thetextureCompressionASTC_LDR()field.booleanspecifies whether all of the BC compressed texture formats are supported.textureCompressionBC(boolean value) Sets the specified value to thetextureCompressionBC()field.booleanspecifies whether all of the ETC2 and EAC compressed texture formats are supported.textureCompressionETC2(boolean value) Sets the specified value to thetextureCompressionETC2()field.booleanspecifies whether all pipelines that will be bound to a command buffer during a subpass which uses no attachments must have the same value forVkPipelineMultisampleStateCreateInfo::rasterizationSamples.variableMultisampleRate(boolean value) Sets the specified value to thevariableMultisampleRate()field.booleanspecifies whether storage buffers and images support stores and atomic operations in the vertex, tessellation, and geometry shader stages.vertexPipelineStoresAndAtomics(boolean value) Sets the specified value to thevertexPipelineStoresAndAtomics()field.booleanspecifies whether lines with width other than 1.0 are supported.wideLines(boolean value) Sets the specified value to thewideLines()field.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
ROBUSTBUFFERACCESS
public static final int ROBUSTBUFFERACCESSThe struct member offsets. -
FULLDRAWINDEXUINT32
public static final int FULLDRAWINDEXUINT32The struct member offsets. -
IMAGECUBEARRAY
public static final int IMAGECUBEARRAYThe struct member offsets. -
INDEPENDENTBLEND
public static final int INDEPENDENTBLENDThe struct member offsets. -
GEOMETRYSHADER
public static final int GEOMETRYSHADERThe struct member offsets. -
TESSELLATIONSHADER
public static final int TESSELLATIONSHADERThe struct member offsets. -
SAMPLERATESHADING
public static final int SAMPLERATESHADINGThe struct member offsets. -
DUALSRCBLEND
public static final int DUALSRCBLENDThe struct member offsets. -
LOGICOP
public static final int LOGICOPThe struct member offsets. -
MULTIDRAWINDIRECT
public static final int MULTIDRAWINDIRECTThe struct member offsets. -
DRAWINDIRECTFIRSTINSTANCE
public static final int DRAWINDIRECTFIRSTINSTANCEThe struct member offsets. -
DEPTHCLAMP
public static final int DEPTHCLAMPThe struct member offsets. -
DEPTHBIASCLAMP
public static final int DEPTHBIASCLAMPThe struct member offsets. -
FILLMODENONSOLID
public static final int FILLMODENONSOLIDThe struct member offsets. -
DEPTHBOUNDS
public static final int DEPTHBOUNDSThe struct member offsets. -
WIDELINES
public static final int WIDELINESThe struct member offsets. -
LARGEPOINTS
public static final int LARGEPOINTSThe struct member offsets. -
ALPHATOONE
public static final int ALPHATOONEThe struct member offsets. -
MULTIVIEWPORT
public static final int MULTIVIEWPORTThe struct member offsets. -
SAMPLERANISOTROPY
public static final int SAMPLERANISOTROPYThe struct member offsets. -
TEXTURECOMPRESSIONETC2
public static final int TEXTURECOMPRESSIONETC2The struct member offsets. -
TEXTURECOMPRESSIONASTC_LDR
public static final int TEXTURECOMPRESSIONASTC_LDRThe struct member offsets. -
TEXTURECOMPRESSIONBC
public static final int TEXTURECOMPRESSIONBCThe struct member offsets. -
OCCLUSIONQUERYPRECISE
public static final int OCCLUSIONQUERYPRECISEThe struct member offsets. -
PIPELINESTATISTICSQUERY
public static final int PIPELINESTATISTICSQUERYThe struct member offsets. -
VERTEXPIPELINESTORESANDATOMICS
public static final int VERTEXPIPELINESTORESANDATOMICSThe struct member offsets. -
FRAGMENTSTORESANDATOMICS
public static final int FRAGMENTSTORESANDATOMICSThe struct member offsets. -
SHADERTESSELLATIONANDGEOMETRYPOINTSIZE
public static final int SHADERTESSELLATIONANDGEOMETRYPOINTSIZEThe struct member offsets. -
SHADERIMAGEGATHEREXTENDED
public static final int SHADERIMAGEGATHEREXTENDEDThe struct member offsets. -
SHADERSTORAGEIMAGEEXTENDEDFORMATS
public static final int SHADERSTORAGEIMAGEEXTENDEDFORMATSThe struct member offsets. -
SHADERSTORAGEIMAGEMULTISAMPLE
public static final int SHADERSTORAGEIMAGEMULTISAMPLEThe struct member offsets. -
SHADERSTORAGEIMAGEREADWITHOUTFORMAT
public static final int SHADERSTORAGEIMAGEREADWITHOUTFORMATThe struct member offsets. -
SHADERSTORAGEIMAGEWRITEWITHOUTFORMAT
public static final int SHADERSTORAGEIMAGEWRITEWITHOUTFORMATThe struct member offsets. -
SHADERUNIFORMBUFFERARRAYDYNAMICINDEXING
public static final int SHADERUNIFORMBUFFERARRAYDYNAMICINDEXINGThe struct member offsets. -
SHADERSAMPLEDIMAGEARRAYDYNAMICINDEXING
public static final int SHADERSAMPLEDIMAGEARRAYDYNAMICINDEXINGThe struct member offsets. -
SHADERSTORAGEBUFFERARRAYDYNAMICINDEXING
public static final int SHADERSTORAGEBUFFERARRAYDYNAMICINDEXINGThe struct member offsets. -
SHADERSTORAGEIMAGEARRAYDYNAMICINDEXING
public static final int SHADERSTORAGEIMAGEARRAYDYNAMICINDEXINGThe struct member offsets. -
SHADERCLIPDISTANCE
public static final int SHADERCLIPDISTANCEThe struct member offsets. -
SHADERCULLDISTANCE
public static final int SHADERCULLDISTANCEThe struct member offsets. -
SHADERFLOAT64
public static final int SHADERFLOAT64The struct member offsets. -
SHADERINT64
public static final int SHADERINT64The struct member offsets. -
SHADERINT16
public static final int SHADERINT16The struct member offsets. -
SHADERRESOURCERESIDENCY
public static final int SHADERRESOURCERESIDENCYThe struct member offsets. -
SHADERRESOURCEMINLOD
public static final int SHADERRESOURCEMINLODThe struct member offsets. -
SPARSEBINDING
public static final int SPARSEBINDINGThe struct member offsets. -
SPARSERESIDENCYBUFFER
public static final int SPARSERESIDENCYBUFFERThe struct member offsets. -
SPARSERESIDENCYIMAGE2D
public static final int SPARSERESIDENCYIMAGE2DThe struct member offsets. -
SPARSERESIDENCYIMAGE3D
public static final int SPARSERESIDENCYIMAGE3DThe struct member offsets. -
SPARSERESIDENCY2SAMPLES
public static final int SPARSERESIDENCY2SAMPLESThe struct member offsets. -
SPARSERESIDENCY4SAMPLES
public static final int SPARSERESIDENCY4SAMPLESThe struct member offsets. -
SPARSERESIDENCY8SAMPLES
public static final int SPARSERESIDENCY8SAMPLESThe struct member offsets. -
SPARSERESIDENCY16SAMPLES
public static final int SPARSERESIDENCY16SAMPLESThe struct member offsets. -
SPARSERESIDENCYALIASED
public static final int SPARSERESIDENCYALIASEDThe struct member offsets. -
VARIABLEMULTISAMPLERATE
public static final int VARIABLEMULTISAMPLERATEThe struct member offsets. -
INHERITEDQUERIES
public static final int INHERITEDQUERIESThe struct member offsets.
-
-
Constructor Details
-
VkPhysicalDeviceFeatures
Creates aVkPhysicalDeviceFeaturesinstance at the current position of the specifiedByteBuffercontainer. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<VkPhysicalDeviceFeatures>
-
robustBufferAccess
public boolean robustBufferAccess()specifies that accesses to buffers are bounds-checked against the range of the buffer descriptor (as determined byVkDescriptorBufferInfo::range,VkBufferViewCreateInfo::range, or the size of the buffer). Out of bounds accesses must not cause application termination, and the effects of shader loads, stores, and atomics must conform to an implementation-dependent behavior as described below.- A buffer access is considered to be out of bounds if any of the following are true:
- The pointer was formed by
OpImageTexelPointerand the coordinate is less than zero or greater than or equal to the number of whole elements in the bound range. - The pointer was not formed by
OpImageTexelPointerand the object pointed to is not wholly contained within the bound range. This includes accesses performed via variable pointers where the buffer descriptor being accessed cannot be statically determined. Uninitialized pointers and pointers equal toOpConstantNullare treated as pointing to a zero-sized object, so all accesses through such pointers are considered to be out of bounds. Buffer accesses through buffer device addresses are not bounds-checked. - If the
VkPhysicalDeviceCooperativeMatrixFeaturesNV::cooperativeMatrixRobustBufferAccessfeature is not enabled, then accesses usingOpCooperativeMatrixLoadNVandOpCooperativeMatrixStoreNVmay not be bounds-checked. - If the
VkPhysicalDeviceCooperativeMatrixFeaturesKHR::cooperativeMatrixRobustBufferAccessfeature is not enabled, then accesses usingOpCooperativeMatrixLoadKHRandOpCooperativeMatrixStoreKHRmay not be bounds-checked.Note
If a SPIR-V
OpLoadinstruction loads a structure and the tail end of the structure is out of bounds, then all members of the structure are considered out of bounds even if the members at the end are not statically used. - If the
robustBufferAccess2feature is not enabled and any buffer access is determined to be out of bounds, then any other access of the same type (load, store, or atomic) to the same buffer that accesses an address less than 16 bytes away from the out of bounds address may also be considered out of bounds. - If the access is a load that reads from the same memory locations as a prior store in the same shader invocation, with no other intervening accesses to the same memory locations in that shader invocation, then the result of the load may be the value stored by the store instruction, even if the access is out of bounds. If the load is
Volatile, then an out of bounds load must return the appropriate out of bounds value.
- The pointer was formed by
- Accesses to descriptors written with a
NULL_HANDLEresource or view are not considered to be out of bounds. Instead, each type of descriptor access defines a specific behavior for accesses to a null descriptor. - Out-of-bounds buffer loads will return any of the following values:
- If the access is to a uniform buffer and the
robustBufferAccess2feature is enabled, loads of offsets between the end of the descriptor range and the end of the descriptor range rounded up to a multiple ofrobustUniformBufferAccessSizeAlignmentbytes must return either zero values or the contents of the memory at the offset being loaded. Loads of offsets past the descriptor range rounded up to a multiple ofrobustUniformBufferAccessSizeAlignmentbytes must return zero values. - If the access is to a storage buffer and the
robustBufferAccess2feature is enabled, loads of offsets between the end of the descriptor range and the end of the descriptor range rounded up to a multiple ofrobustStorageBufferAccessSizeAlignmentbytes must return either zero values or the contents of the memory at the offset being loaded. Loads of offsets past the descriptor range rounded up to a multiple ofrobustStorageBufferAccessSizeAlignmentbytes must return zero values. Similarly, stores to addresses between the end of the descriptor range and the end of the descriptor range rounded up to a multiple ofrobustStorageBufferAccessSizeAlignmentbytes may be discarded. - Non-atomic accesses to storage buffers that are a multiple of 32 bits may be decomposed into 32-bit accesses that are individually bounds-checked.
- If the access is to an index buffer and the
robustBufferAccess2feature is enabled, zero values must be returned. - If the access is to a uniform texel buffer or storage texel buffer and the
robustBufferAccess2feature is enabled, zero values must be returned, and then Conversion to RGBA is applied based on the buffer view’s format. - Values from anywhere within the memory range(s) bound to the buffer (possibly including bytes of memory past the end of the buffer, up to the end of the bound range).
- Zero values, or
(0,0,0,x)vectors for vector reads where x is a valid value represented in the type of the vector components and may be any of:- 0, 1, or the maximum representable positive integer value, for signed or unsigned integer components
- 0.0 or 1.0, for floating-point components
- If the access is to a uniform buffer and the
- Out-of-bounds writes may modify values within the memory range(s) bound to the buffer, but must not modify any other memory.
- If the
robustBufferAccess2feature is enabled, out of bounds writes must not modify any memory.
- If the
- Out-of-bounds atomics may modify values within the memory range(s) bound to the buffer, but must not modify any other memory, and return an undefined value.
- If the
robustBufferAccess2feature is enabled, out of bounds atomics must not modify any memory, and return an undefined value.
- If the
- If the
robustBufferAccess2feature is not enabled, vertex input attributes are considered out of bounds if the offset of the attribute in the bound vertex buffer range plus the size of the attribute is greater than either:vertexBufferRangeSize, ifbindingStride == 0; or(vertexBufferRangeSize - (vertexBufferRangeSize % bindingStride))wherevertexBufferRangeSizeis the byte size of the memory range bound to the vertex buffer binding andbindingStrideis the byte stride of the corresponding vertex input binding. Further, if any vertex input attribute using a specific vertex input binding is out of bounds, then all vertex input attributes using that vertex input binding for that vertex shader invocation are considered out of bounds.- If a vertex input attribute is out of bounds, it will be assigned one of the following values:
- Values from anywhere within the memory range(s) bound to the buffer, converted according to the format of the attribute.
- Zero values, format converted according to the format of the attribute.
- Zero values, or
(0,0,0,x)vectors, as described above.
- If the
robustBufferAccess2feature is enabled, vertex input attributes are considered out of bounds if the offset of the attribute in the bound vertex buffer range plus the size of the attribute is greater than the byte size of the memory range bound to the vertex buffer binding.- If a vertex input attribute is out of bounds, the raw data extracted are zero values, and missing G, B, or A components are filled with
(0,0,1).
- If a vertex input attribute is out of bounds, the raw data extracted are zero values, and missing G, B, or A components are filled with
- If
robustBufferAccessis not enabled, applications must not perform out of bounds accesses except under the conditions enabled by thepipelineRobustnessfeature .
- A buffer access is considered to be out of bounds if any of the following are true:
-
fullDrawIndexUint32
public boolean fullDrawIndexUint32()specifies the full 32-bit range of indices is supported for indexed draw calls when using aVkIndexTypeofINDEX_TYPE_UINT32.maxDrawIndexedIndexValueis the maximum index value that may be used (aside from the primitive restart index, which is always 232-1 when theVkIndexTypeisINDEX_TYPE_UINT32). If this feature is supported,maxDrawIndexedIndexValuemust be 232-1; otherwise it must be no smaller than 224-1. SeemaxDrawIndexedIndexValue. -
imageCubeArray
public boolean imageCubeArray()specifies whether image views with aVkImageViewTypeofIMAGE_VIEW_TYPE_CUBE_ARRAYcan be created, and that the correspondingSampledCubeArrayandImageCubeArraySPIR-V capabilities can be used in shader code. -
independentBlend
public boolean independentBlend()specifies whether theVkPipelineColorBlendAttachmentStatesettings are controlled independently per-attachment. If this feature is not enabled, theVkPipelineColorBlendAttachmentStatesettings for all color attachments must be identical. Otherwise, a differentVkPipelineColorBlendAttachmentStatecan be provided for each bound color attachment. -
geometryShader
public boolean geometryShader()specifies whether geometry shaders are supported. If this feature is not enabled, theSHADER_STAGE_GEOMETRY_BITandPIPELINE_STAGE_GEOMETRY_SHADER_BITenum values must not be used. This also specifies whether shader modules can declare theGeometrycapability. -
tessellationShader
public boolean tessellationShader()specifies whether tessellation control and evaluation shaders are supported. If this feature is not enabled, theSHADER_STAGE_TESSELLATION_CONTROL_BIT,SHADER_STAGE_TESSELLATION_EVALUATION_BIT,PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT,PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT, andSTRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFOenum values must not be used. This also specifies whether shader modules can declare theTessellationcapability. -
sampleRateShading
public boolean sampleRateShading()specifies whether Sample Shading and multisample interpolation are supported. If this feature is not enabled, thesampleShadingEnablemember of theVkPipelineMultisampleStateCreateInfostructure must beFALSEand theminSampleShadingmember is ignored. This also specifies whether shader modules can declare theSampleRateShadingcapability. -
dualSrcBlend
public boolean dualSrcBlend()specifies whether blend operations which take two sources are supported. If this feature is not enabled, theBLEND_FACTOR_SRC1_COLOR,BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,BLEND_FACTOR_SRC1_ALPHA, andBLEND_FACTOR_ONE_MINUS_SRC1_ALPHAenum values must not be used as source or destination blending factors. See Dual-Source Blending. -
logicOp
public boolean logicOp()specifies whether logic operations are supported. If this feature is not enabled, thelogicOpEnablemember of theVkPipelineColorBlendStateCreateInfostructure must beFALSE, and thelogicOpmember is ignored. -
multiDrawIndirect
public boolean multiDrawIndirect()specifies whether multiple draw indirect is supported. If this feature is not enabled, thedrawCountparameter to theCmdDrawIndirectandCmdDrawIndexedIndirectcommands must be 0 or 1. ThemaxDrawIndirectCountmember of theVkPhysicalDeviceLimitsstructure must also be 1 if this feature is not supported. SeemaxDrawIndirectCount. -
drawIndirectFirstInstance
public boolean drawIndirectFirstInstance()specifies whether indirect drawing calls support thefirstInstanceparameter. If this feature is not enabled, thefirstInstancemember of allVkDrawIndirectCommandandVkDrawIndexedIndirectCommandstructures that are provided to theCmdDrawIndirectandCmdDrawIndexedIndirectcommands must be 0. -
depthClamp
public boolean depthClamp()specifies whether depth clamping is supported. If this feature is not enabled, thedepthClampEnablemember of theVkPipelineRasterizationStateCreateInfostructure must beFALSE. Otherwise, settingdepthClampEnabletoTRUEwill enable depth clamping. -
depthBiasClamp
public boolean depthBiasClamp()specifies whether depth bias clamping is supported. If this feature is not enabled, thedepthBiasClampmember of theVkPipelineRasterizationStateCreateInfostructure must be 0.0 unless theDYNAMIC_STATE_DEPTH_BIASdynamic state is enabled, in which case thedepthBiasClampparameter toCmdSetDepthBiasmust be 0.0. -
fillModeNonSolid
public boolean fillModeNonSolid()specifies whether point and wireframe fill modes are supported. If this feature is not enabled, thePOLYGON_MODE_POINTandPOLYGON_MODE_LINEenum values must not be used. -
depthBounds
public boolean depthBounds()specifies whether depth bounds tests are supported. If this feature is not enabled, thedepthBoundsTestEnablemember of theVkPipelineDepthStencilStateCreateInfostructure must beFALSEunless theDYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLEdynamic state is enabled, in which case thedepthBoundsTestEnableparameter toCmdSetDepthBoundsTestEnablemust beFALSE. WhendepthBoundsTestEnableisFALSE, theminDepthBoundsandmaxDepthBoundsmembers of theVkPipelineDepthStencilStateCreateInfostructure are ignored. -
wideLines
public boolean wideLines()specifies whether lines with width other than 1.0 are supported. If this feature is not enabled, thelineWidthmember of theVkPipelineRasterizationStateCreateInfostructure must be 1.0 unless theDYNAMIC_STATE_LINE_WIDTHdynamic state is enabled, in which case thelineWidthparameter toCmdSetLineWidthmust be 1.0. When this feature is supported, the range and granularity of supported line widths are indicated by thelineWidthRangeandlineWidthGranularitymembers of theVkPhysicalDeviceLimitsstructure, respectively. -
largePoints
public boolean largePoints()specifies whether points with size greater than 1.0 are supported. If this feature is not enabled, only a point size of 1.0 written by a shader is supported. The range and granularity of supported point sizes are indicated by thepointSizeRangeandpointSizeGranularitymembers of theVkPhysicalDeviceLimitsstructure, respectively. -
alphaToOne
public boolean alphaToOne()specifies whether the implementation is able to replace the alpha value of the fragment shader color output in the Multisample Coverage fragment operation. If this feature is not enabled, then thealphaToOneEnablemember of theVkPipelineMultisampleStateCreateInfostructure must beFALSE. Otherwise settingalphaToOneEnabletoTRUEwill enable alpha-to-one behavior. -
multiViewport
public boolean multiViewport()specifies whether more than one viewport is supported. If this feature is not enabled:- The
viewportCountandscissorCountmembers of theVkPipelineViewportStateCreateInfostructure must be 1. - The
firstViewportandviewportCountparameters to theCmdSetViewportcommand must be 0 and 1, respectively. - The
firstScissorandscissorCountparameters to theCmdSetScissorcommand must be 0 and 1, respectively. - The
exclusiveScissorCountmember of theVkPipelineViewportExclusiveScissorStateCreateInfoNVstructure must be 0 or 1. - The
firstExclusiveScissorandexclusiveScissorCountparameters to theCmdSetExclusiveScissorNVcommand must be 0 and 1, respectively.
- The
-
samplerAnisotropy
public boolean samplerAnisotropy()specifies whether anisotropic filtering is supported. If this feature is not enabled, theanisotropyEnablemember of theVkSamplerCreateInfostructure must beFALSE. -
textureCompressionETC2
public boolean textureCompressionETC2()specifies whether all of the ETC2 and EAC compressed texture formats are supported. If this feature is enabled, then theFORMAT_FEATURE_SAMPLED_IMAGE_BIT,FORMAT_FEATURE_BLIT_SRC_BITandFORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BITfeatures must be supported inoptimalTilingFeaturesfor the following formats:FORMAT_ETC2_R8G8B8_UNORM_BLOCKFORMAT_ETC2_R8G8B8_SRGB_BLOCKFORMAT_ETC2_R8G8B8A1_UNORM_BLOCKFORMAT_ETC2_R8G8B8A1_SRGB_BLOCKFORMAT_ETC2_R8G8B8A8_UNORM_BLOCKFORMAT_ETC2_R8G8B8A8_SRGB_BLOCKFORMAT_EAC_R11_UNORM_BLOCKFORMAT_EAC_R11_SNORM_BLOCKFORMAT_EAC_R11G11_UNORM_BLOCKFORMAT_EAC_R11G11_SNORM_BLOCKTo query for additional properties, or if the feature is not enabled,GetPhysicalDeviceFormatPropertiesandGetPhysicalDeviceImageFormatPropertiescan be used to check for supported properties of individual formats as normal.
-
textureCompressionASTC_LDR
public boolean textureCompressionASTC_LDR()specifies whether all of the ASTC LDR compressed texture formats are supported. If this feature is enabled, then theFORMAT_FEATURE_SAMPLED_IMAGE_BIT,FORMAT_FEATURE_BLIT_SRC_BITandFORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BITfeatures must be supported inoptimalTilingFeaturesfor the following formats:FORMAT_ASTC_4x4_UNORM_BLOCKFORMAT_ASTC_4x4_SRGB_BLOCKFORMAT_ASTC_5x4_UNORM_BLOCKFORMAT_ASTC_5x4_SRGB_BLOCKFORMAT_ASTC_5x5_UNORM_BLOCKFORMAT_ASTC_5x5_SRGB_BLOCKFORMAT_ASTC_6x5_UNORM_BLOCKFORMAT_ASTC_6x5_SRGB_BLOCKFORMAT_ASTC_6x6_UNORM_BLOCKFORMAT_ASTC_6x6_SRGB_BLOCKFORMAT_ASTC_8x5_UNORM_BLOCKFORMAT_ASTC_8x5_SRGB_BLOCKFORMAT_ASTC_8x6_UNORM_BLOCKFORMAT_ASTC_8x6_SRGB_BLOCKFORMAT_ASTC_8x8_UNORM_BLOCKFORMAT_ASTC_8x8_SRGB_BLOCKFORMAT_ASTC_10x5_UNORM_BLOCKFORMAT_ASTC_10x5_SRGB_BLOCKFORMAT_ASTC_10x6_UNORM_BLOCKFORMAT_ASTC_10x6_SRGB_BLOCKFORMAT_ASTC_10x8_UNORM_BLOCKFORMAT_ASTC_10x8_SRGB_BLOCKFORMAT_ASTC_10x10_UNORM_BLOCKFORMAT_ASTC_10x10_SRGB_BLOCKFORMAT_ASTC_12x10_UNORM_BLOCKFORMAT_ASTC_12x10_SRGB_BLOCKFORMAT_ASTC_12x12_UNORM_BLOCKFORMAT_ASTC_12x12_SRGB_BLOCKTo query for additional properties, or if the feature is not enabled,GetPhysicalDeviceFormatPropertiesandGetPhysicalDeviceImageFormatPropertiescan be used to check for supported properties of individual formats as normal.
-
textureCompressionBC
public boolean textureCompressionBC()specifies whether all of the BC compressed texture formats are supported. If this feature is enabled, then theFORMAT_FEATURE_SAMPLED_IMAGE_BIT,FORMAT_FEATURE_BLIT_SRC_BITandFORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BITfeatures must be supported inoptimalTilingFeaturesfor the following formats:FORMAT_BC1_RGB_UNORM_BLOCKFORMAT_BC1_RGB_SRGB_BLOCKFORMAT_BC1_RGBA_UNORM_BLOCKFORMAT_BC1_RGBA_SRGB_BLOCKFORMAT_BC2_UNORM_BLOCKFORMAT_BC2_SRGB_BLOCKFORMAT_BC3_UNORM_BLOCKFORMAT_BC3_SRGB_BLOCKFORMAT_BC4_UNORM_BLOCKFORMAT_BC4_SNORM_BLOCKFORMAT_BC5_UNORM_BLOCKFORMAT_BC5_SNORM_BLOCKFORMAT_BC6H_UFLOAT_BLOCKFORMAT_BC6H_SFLOAT_BLOCKFORMAT_BC7_UNORM_BLOCKFORMAT_BC7_SRGB_BLOCKTo query for additional properties, or if the feature is not enabled,GetPhysicalDeviceFormatPropertiesandGetPhysicalDeviceImageFormatPropertiescan be used to check for supported properties of individual formats as normal.
-
occlusionQueryPrecise
public boolean occlusionQueryPrecise()specifies whether occlusion queries returning actual sample counts are supported. Occlusion queries are created in aVkQueryPoolby specifying thequeryTypeofQUERY_TYPE_OCCLUSIONin theVkQueryPoolCreateInfostructure which is passed toCreateQueryPool. If this feature is enabled, queries of this type can enableQUERY_CONTROL_PRECISE_BITin theflagsparameter toCmdBeginQuery. If this feature is not supported, the implementation supports only boolean occlusion queries. When any samples are passed, boolean queries will return a non-zero result value, otherwise a result value of zero is returned. When this feature is enabled andQUERY_CONTROL_PRECISE_BITis set, occlusion queries will report the actual number of samples passed. -
pipelineStatisticsQuery
public boolean pipelineStatisticsQuery()specifies whether the pipeline statistics queries are supported. If this feature is not enabled, queries of typeQUERY_TYPE_PIPELINE_STATISTICScannot be created, and none of theVkQueryPipelineStatisticFlagBitsbits can be set in thepipelineStatisticsmember of theVkQueryPoolCreateInfostructure. -
vertexPipelineStoresAndAtomics
public boolean vertexPipelineStoresAndAtomics()specifies whether storage buffers and images support stores and atomic operations in the vertex, tessellation, and geometry shader stages. If this feature is not enabled, all storage image, storage texel buffer, and storage buffer variables used by these stages in shader modules must be decorated with theNonWritabledecoration (or thereadonlymemory qualifier in GLSL). -
fragmentStoresAndAtomics
public boolean fragmentStoresAndAtomics()specifies whether storage buffers and images support stores and atomic operations in the fragment shader stage. If this feature is not enabled, all storage image, storage texel buffer, and storage buffer variables used by the fragment stage in shader modules must be decorated with theNonWritabledecoration (or thereadonlymemory qualifier in GLSL). -
shaderTessellationAndGeometryPointSize
public boolean shaderTessellationAndGeometryPointSize()specifies whether thePointSizebuilt-in decoration is available in the tessellation control, tessellation evaluation, and geometry shader stages. If this feature is not enabled, members decorated with thePointSizebuilt-in decoration must not be read from or written to and all points written from a tessellation or geometry shader will have a size of 1.0. This also specifies whether shader modules can declare theTessellationPointSizecapability for tessellation control and evaluation shaders, or if the shader modules can declare theGeometryPointSizecapability for geometry shaders. An implementation supporting this feature must also support one or both of thetessellationShaderorgeometryShaderfeatures. -
shaderImageGatherExtended
public boolean shaderImageGatherExtended()specifies whether the extended set of image gather instructions are available in shader code. If this feature is not enabled, theOpImage*Gatherinstructions do not support theOffsetandConstOffsetsoperands. This also specifies whether shader modules can declare theImageGatherExtendedcapability. -
shaderStorageImageExtendedFormats
public boolean shaderStorageImageExtendedFormats()specifies whether all the “storage image extended formats” below are supported; if this feature is supported, then theFORMAT_FEATURE_STORAGE_IMAGE_BITmust be supported inoptimalTilingFeaturesfor the following formats:FORMAT_R16G16_SFLOATFORMAT_B10G11R11_UFLOAT_PACK32FORMAT_R16_SFLOATFORMAT_R16G16B16A16_UNORMFORMAT_A2B10G10R10_UNORM_PACK32FORMAT_R16G16_UNORMFORMAT_R8G8_UNORMFORMAT_R16_UNORMFORMAT_R8_UNORMFORMAT_R16G16B16A16_SNORMFORMAT_R16G16_SNORMFORMAT_R8G8_SNORMFORMAT_R16_SNORMFORMAT_R8_SNORMFORMAT_R16G16_SINTFORMAT_R8G8_SINTFORMAT_R16_SINTFORMAT_R8_SINTFORMAT_A2B10G10R10_UINT_PACK32FORMAT_R16G16_UINTFORMAT_R8G8_UINTFORMAT_R16_UINTFORMAT_R8_UINTNote
shaderStorageImageExtendedFormatsfeature only adds a guarantee of format support, which is specified for the whole physical device. Therefore enabling or disabling the feature viaCreateDevicehas no practical effect.To query for additional properties, or if the feature is not supported,
GetPhysicalDeviceFormatPropertiesandGetPhysicalDeviceImageFormatPropertiescan be used to check for supported properties of individual formats, as usual rules allow.FORMAT_R32G32_UINT,FORMAT_R32G32_SINT, andFORMAT_R32G32_SFLOATfromStorageImageExtendedFormatsSPIR-V capability, are already covered by core Vulkan mandatory format support.
-
shaderStorageImageMultisample
public boolean shaderStorageImageMultisample()specifies whether multisampled storage images are supported. If this feature is not enabled, images that are created with ausagethat includesIMAGE_USAGE_STORAGE_BITmust be created withsamplesequal toSAMPLE_COUNT_1_BIT. This also specifies whether shader modules can declare theStorageImageMultisampleandImageMSArraycapabilities. -
shaderStorageImageReadWithoutFormat
public boolean shaderStorageImageReadWithoutFormat()specifies whether storage images and storage texel buffers require a format qualifier to be specified when reading.shaderStorageImageReadWithoutFormatapplies only to formats listed in the storage without format list. -
shaderStorageImageWriteWithoutFormat
public boolean shaderStorageImageWriteWithoutFormat()specifies whether storage images and storage texel buffers require a format qualifier to be specified when writing.shaderStorageImageWriteWithoutFormatapplies only to formats listed in the storage without format list. -
shaderUniformBufferArrayDynamicIndexing
public boolean shaderUniformBufferArrayDynamicIndexing()specifies whether arrays of uniform buffers can be indexed by integer expressions that are dynamically uniform within either the subgroup or the invocation group in shader code. If this feature is not enabled, resources with a descriptor type ofDESCRIPTOR_TYPE_UNIFORM_BUFFERorDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMICmust be indexed only by constant integral expressions when aggregated into arrays in shader code. This also specifies whether shader modules can declare theUniformBufferArrayDynamicIndexingcapability. -
shaderSampledImageArrayDynamicIndexing
public boolean shaderSampledImageArrayDynamicIndexing()specifies whether arrays of samplers or sampled images can be indexed by integer expressions that are dynamically uniform within either the subgroup or the invocation group in shader code. If this feature is not enabled, resources with a descriptor type ofDESCRIPTOR_TYPE_SAMPLER,DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, orDESCRIPTOR_TYPE_SAMPLED_IMAGEmust be indexed only by constant integral expressions when aggregated into arrays in shader code. This also specifies whether shader modules can declare theSampledImageArrayDynamicIndexingcapability. -
shaderStorageBufferArrayDynamicIndexing
public boolean shaderStorageBufferArrayDynamicIndexing()specifies whether arrays of storage buffers can be indexed by integer expressions that are dynamically uniform within either the subgroup or the invocation group in shader code. If this feature is not enabled, resources with a descriptor type ofDESCRIPTOR_TYPE_STORAGE_BUFFERorDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMICmust be indexed only by constant integral expressions when aggregated into arrays in shader code. This also specifies whether shader modules can declare theStorageBufferArrayDynamicIndexingcapability. -
shaderStorageImageArrayDynamicIndexing
public boolean shaderStorageImageArrayDynamicIndexing()specifies whether arrays of storage images can be indexed by integer expressions that are dynamically uniform within either the subgroup or the invocation group in shader code. If this feature is not enabled, resources with a descriptor type ofDESCRIPTOR_TYPE_STORAGE_IMAGEmust be indexed only by constant integral expressions when aggregated into arrays in shader code. This also specifies whether shader modules can declare theStorageImageArrayDynamicIndexingcapability. -
shaderClipDistance
public boolean shaderClipDistance()specifies whether clip distances are supported in shader code. If this feature is not enabled, any members decorated with theClipDistancebuilt-in decoration must not be read from or written to in shader modules. This also specifies whether shader modules can declare theClipDistancecapability. -
shaderCullDistance
public boolean shaderCullDistance()specifies whether cull distances are supported in shader code. If this feature is not enabled, any members decorated with theCullDistancebuilt-in decoration must not be read from or written to in shader modules. This also specifies whether shader modules can declare theCullDistancecapability. -
shaderFloat64
public boolean shaderFloat64()specifies whether 64-bit floats (doubles) are supported in shader code. If this feature is not enabled, 64-bit floating-point types must not be used in shader code. This also specifies whether shader modules can declare theFloat64capability. Declaring and using 64-bit floats is enabled for all storage classes that SPIR-V allows with theFloat64capability. -
shaderInt64
public boolean shaderInt64()specifies whether 64-bit integers (signed and unsigned) are supported in shader code. If this feature is not enabled, 64-bit integer types must not be used in shader code. This also specifies whether shader modules can declare theInt64capability. Declaring and using 64-bit integers is enabled for all storage classes that SPIR-V allows with theInt64capability. -
shaderInt16
public boolean shaderInt16()specifies whether 16-bit integers (signed and unsigned) are supported in shader code. If this feature is not enabled, 16-bit integer types must not be used in shader code. This also specifies whether shader modules can declare theInt16capability. However, this only enables a subset of the storage classes that SPIR-V allows for theInt16SPIR-V capability: Declaring and using 16-bit integers in thePrivate,Workgroup(for non-Block variables), andFunctionstorage classes is enabled, while declaring them in the interface storage classes (e.g.,UniformConstant,Uniform,StorageBuffer,Input,Output, andPushConstant) is not enabled. -
shaderResourceResidency
public boolean shaderResourceResidency()specifies whether image operations that return resource residency information are supported in shader code. If this feature is not enabled, theOpImageSparse*instructions must not be used in shader code. This also specifies whether shader modules can declare theSparseResidencycapability. The feature requires at least one of thesparseResidency*features to be supported. -
shaderResourceMinLod
public boolean shaderResourceMinLod()specifies whether image operations specifying the minimum resource LOD are supported in shader code. If this feature is not enabled, theMinLodimage operand must not be used in shader code. This also specifies whether shader modules can declare theMinLodcapability. -
sparseBinding
public boolean sparseBinding()specifies whether resource memory can be managed at opaque sparse block level instead of at the object level. If this feature is not enabled, resource memory must be bound only on a per-object basis using theBindBufferMemoryandBindImageMemorycommands. In this case, buffers and images must not be created withBUFFER_CREATE_SPARSE_BINDING_BITandIMAGE_CREATE_SPARSE_BINDING_BITset in theflagsmember of theVkBufferCreateInfoandVkImageCreateInfostructures, respectively. Otherwise resource memory can be managed as described in Sparse Resource Features. -
sparseResidencyBuffer
public boolean sparseResidencyBuffer()specifies whether the device can access partially resident buffers. If this feature is not enabled, buffers must not be created withBUFFER_CREATE_SPARSE_RESIDENCY_BITset in theflagsmember of theVkBufferCreateInfostructure. -
sparseResidencyImage2D
public boolean sparseResidencyImage2D()specifies whether the device can access partially resident 2D images with 1 sample per pixel. If this feature is not enabled, images with animageTypeofIMAGE_TYPE_2Dandsamplesset toSAMPLE_COUNT_1_BITmust not be created withIMAGE_CREATE_SPARSE_RESIDENCY_BITset in theflagsmember of theVkImageCreateInfostructure. -
sparseResidencyImage3D
public boolean sparseResidencyImage3D()specifies whether the device can access partially resident 3D images. If this feature is not enabled, images with animageTypeofIMAGE_TYPE_3Dmust not be created withIMAGE_CREATE_SPARSE_RESIDENCY_BITset in theflagsmember of theVkImageCreateInfostructure. -
sparseResidency2Samples
public boolean sparseResidency2Samples()specifies whether the physical device can access partially resident 2D images with 2 samples per pixel. If this feature is not enabled, images with animageTypeofIMAGE_TYPE_2Dandsamplesset toSAMPLE_COUNT_2_BITmust not be created withIMAGE_CREATE_SPARSE_RESIDENCY_BITset in theflagsmember of theVkImageCreateInfostructure. -
sparseResidency4Samples
public boolean sparseResidency4Samples()specifies whether the physical device can access partially resident 2D images with 4 samples per pixel. If this feature is not enabled, images with animageTypeofIMAGE_TYPE_2Dandsamplesset toSAMPLE_COUNT_4_BITmust not be created withIMAGE_CREATE_SPARSE_RESIDENCY_BITset in theflagsmember of theVkImageCreateInfostructure. -
sparseResidency8Samples
public boolean sparseResidency8Samples()specifies whether the physical device can access partially resident 2D images with 8 samples per pixel. If this feature is not enabled, images with animageTypeofIMAGE_TYPE_2Dandsamplesset toSAMPLE_COUNT_8_BITmust not be created withIMAGE_CREATE_SPARSE_RESIDENCY_BITset in theflagsmember of theVkImageCreateInfostructure. -
sparseResidency16Samples
public boolean sparseResidency16Samples()specifies whether the physical device can access partially resident 2D images with 16 samples per pixel. If this feature is not enabled, images with animageTypeofIMAGE_TYPE_2Dandsamplesset toSAMPLE_COUNT_16_BITmust not be created withIMAGE_CREATE_SPARSE_RESIDENCY_BITset in theflagsmember of theVkImageCreateInfostructure. -
sparseResidencyAliased
public boolean sparseResidencyAliased()specifies whether the physical device can correctly access data aliased into multiple locations. If this feature is not enabled, theBUFFER_CREATE_SPARSE_ALIASED_BITandIMAGE_CREATE_SPARSE_ALIASED_BITenum values must not be used inflagsmembers of theVkBufferCreateInfoandVkImageCreateInfostructures, respectively. -
variableMultisampleRate
public boolean variableMultisampleRate()specifies whether all pipelines that will be bound to a command buffer during a subpass which uses no attachments must have the same value forVkPipelineMultisampleStateCreateInfo::rasterizationSamples. If set toTRUE, the implementation supports variable multisample rates in a subpass which uses no attachments. If set toFALSE, then all pipelines bound in such a subpass must have the same multisample rate. This has no effect in situations where a subpass uses any attachments. -
inheritedQueries
public boolean inheritedQueries()specifies whether a secondary command buffer may be executed while a query is active. -
robustBufferAccess
Sets the specified value to therobustBufferAccess()field. -
fullDrawIndexUint32
Sets the specified value to thefullDrawIndexUint32()field. -
imageCubeArray
Sets the specified value to theimageCubeArray()field. -
independentBlend
Sets the specified value to theindependentBlend()field. -
geometryShader
Sets the specified value to thegeometryShader()field. -
tessellationShader
Sets the specified value to thetessellationShader()field. -
sampleRateShading
Sets the specified value to thesampleRateShading()field. -
dualSrcBlend
Sets the specified value to thedualSrcBlend()field. -
logicOp
Sets the specified value to thelogicOp()field. -
multiDrawIndirect
Sets the specified value to themultiDrawIndirect()field. -
drawIndirectFirstInstance
Sets the specified value to thedrawIndirectFirstInstance()field. -
depthClamp
Sets the specified value to thedepthClamp()field. -
depthBiasClamp
Sets the specified value to thedepthBiasClamp()field. -
fillModeNonSolid
Sets the specified value to thefillModeNonSolid()field. -
depthBounds
Sets the specified value to thedepthBounds()field. -
wideLines
Sets the specified value to thewideLines()field. -
largePoints
Sets the specified value to thelargePoints()field. -
alphaToOne
Sets the specified value to thealphaToOne()field. -
multiViewport
Sets the specified value to themultiViewport()field. -
samplerAnisotropy
Sets the specified value to thesamplerAnisotropy()field. -
textureCompressionETC2
Sets the specified value to thetextureCompressionETC2()field. -
textureCompressionASTC_LDR
Sets the specified value to thetextureCompressionASTC_LDR()field. -
textureCompressionBC
Sets the specified value to thetextureCompressionBC()field. -
occlusionQueryPrecise
Sets the specified value to theocclusionQueryPrecise()field. -
pipelineStatisticsQuery
Sets the specified value to thepipelineStatisticsQuery()field. -
vertexPipelineStoresAndAtomics
Sets the specified value to thevertexPipelineStoresAndAtomics()field. -
fragmentStoresAndAtomics
Sets the specified value to thefragmentStoresAndAtomics()field. -
shaderTessellationAndGeometryPointSize
Sets the specified value to theshaderTessellationAndGeometryPointSize()field. -
shaderImageGatherExtended
Sets the specified value to theshaderImageGatherExtended()field. -
shaderStorageImageExtendedFormats
Sets the specified value to theshaderStorageImageExtendedFormats()field. -
shaderStorageImageMultisample
Sets the specified value to theshaderStorageImageMultisample()field. -
shaderStorageImageReadWithoutFormat
Sets the specified value to theshaderStorageImageReadWithoutFormat()field. -
shaderStorageImageWriteWithoutFormat
Sets the specified value to theshaderStorageImageWriteWithoutFormat()field. -
shaderUniformBufferArrayDynamicIndexing
Sets the specified value to theshaderUniformBufferArrayDynamicIndexing()field. -
shaderSampledImageArrayDynamicIndexing
Sets the specified value to theshaderSampledImageArrayDynamicIndexing()field. -
shaderStorageBufferArrayDynamicIndexing
Sets the specified value to theshaderStorageBufferArrayDynamicIndexing()field. -
shaderStorageImageArrayDynamicIndexing
Sets the specified value to theshaderStorageImageArrayDynamicIndexing()field. -
shaderClipDistance
Sets the specified value to theshaderClipDistance()field. -
shaderCullDistance
Sets the specified value to theshaderCullDistance()field. -
shaderFloat64
Sets the specified value to theshaderFloat64()field. -
shaderInt64
Sets the specified value to theshaderInt64()field. -
shaderInt16
Sets the specified value to theshaderInt16()field. -
shaderResourceResidency
Sets the specified value to theshaderResourceResidency()field. -
shaderResourceMinLod
Sets the specified value to theshaderResourceMinLod()field. -
sparseBinding
Sets the specified value to thesparseBinding()field. -
sparseResidencyBuffer
Sets the specified value to thesparseResidencyBuffer()field. -
sparseResidencyImage2D
Sets the specified value to thesparseResidencyImage2D()field. -
sparseResidencyImage3D
Sets the specified value to thesparseResidencyImage3D()field. -
sparseResidency2Samples
Sets the specified value to thesparseResidency2Samples()field. -
sparseResidency4Samples
Sets the specified value to thesparseResidency4Samples()field. -
sparseResidency8Samples
Sets the specified value to thesparseResidency8Samples()field. -
sparseResidency16Samples
Sets the specified value to thesparseResidency16Samples()field. -
sparseResidencyAliased
Sets the specified value to thesparseResidencyAliased()field. -
variableMultisampleRate
Sets the specified value to thevariableMultisampleRate()field. -
inheritedQueries
Sets the specified value to theinheritedQueries()field. -
set
public VkPhysicalDeviceFeatures set(boolean robustBufferAccess, boolean fullDrawIndexUint32, boolean imageCubeArray, boolean independentBlend, boolean geometryShader, boolean tessellationShader, boolean sampleRateShading, boolean dualSrcBlend, boolean logicOp, boolean multiDrawIndirect, boolean drawIndirectFirstInstance, boolean depthClamp, boolean depthBiasClamp, boolean fillModeNonSolid, boolean depthBounds, boolean wideLines, boolean largePoints, boolean alphaToOne, boolean multiViewport, boolean samplerAnisotropy, boolean textureCompressionETC2, boolean textureCompressionASTC_LDR, boolean textureCompressionBC, boolean occlusionQueryPrecise, boolean pipelineStatisticsQuery, boolean vertexPipelineStoresAndAtomics, boolean fragmentStoresAndAtomics, boolean shaderTessellationAndGeometryPointSize, boolean shaderImageGatherExtended, boolean shaderStorageImageExtendedFormats, boolean shaderStorageImageMultisample, boolean shaderStorageImageReadWithoutFormat, boolean shaderStorageImageWriteWithoutFormat, boolean shaderUniformBufferArrayDynamicIndexing, boolean shaderSampledImageArrayDynamicIndexing, boolean shaderStorageBufferArrayDynamicIndexing, boolean shaderStorageImageArrayDynamicIndexing, boolean shaderClipDistance, boolean shaderCullDistance, boolean shaderFloat64, boolean shaderInt64, boolean shaderInt16, boolean shaderResourceResidency, boolean shaderResourceMinLod, boolean sparseBinding, boolean sparseResidencyBuffer, boolean sparseResidencyImage2D, boolean sparseResidencyImage3D, boolean sparseResidency2Samples, boolean sparseResidency4Samples, boolean sparseResidency8Samples, boolean sparseResidency16Samples, boolean sparseResidencyAliased, boolean variableMultisampleRate, boolean inheritedQueries) Initializes this struct with the specified values. -
set
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newVkPhysicalDeviceFeaturesinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkPhysicalDeviceFeaturesinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkPhysicalDeviceFeaturesinstance allocated withBufferUtils. -
create
Returns a newVkPhysicalDeviceFeaturesinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkPhysicalDeviceFeatures.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkPhysicalDeviceFeatures.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkPhysicalDeviceFeatures.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkPhysicalDeviceFeatures.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
-
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead. -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead. -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
mallocStack
@Deprecated public static VkPhysicalDeviceFeatures.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead. -
callocStack
@Deprecated public static VkPhysicalDeviceFeatures.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
malloc
Returns a newVkPhysicalDeviceFeaturesinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkPhysicalDeviceFeaturesinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkPhysicalDeviceFeatures.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceFeatures.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkPhysicalDeviceFeatures.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceFeatures.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nrobustBufferAccess
public static int nrobustBufferAccess(long struct) Unsafe version ofrobustBufferAccess(). -
nfullDrawIndexUint32
public static int nfullDrawIndexUint32(long struct) Unsafe version offullDrawIndexUint32(). -
nimageCubeArray
public static int nimageCubeArray(long struct) Unsafe version ofimageCubeArray(). -
nindependentBlend
public static int nindependentBlend(long struct) Unsafe version ofindependentBlend(). -
ngeometryShader
public static int ngeometryShader(long struct) Unsafe version ofgeometryShader(). -
ntessellationShader
public static int ntessellationShader(long struct) Unsafe version oftessellationShader(). -
nsampleRateShading
public static int nsampleRateShading(long struct) Unsafe version ofsampleRateShading(). -
ndualSrcBlend
public static int ndualSrcBlend(long struct) Unsafe version ofdualSrcBlend(). -
nlogicOp
public static int nlogicOp(long struct) Unsafe version oflogicOp(). -
nmultiDrawIndirect
public static int nmultiDrawIndirect(long struct) Unsafe version ofmultiDrawIndirect(). -
ndrawIndirectFirstInstance
public static int ndrawIndirectFirstInstance(long struct) Unsafe version ofdrawIndirectFirstInstance(). -
ndepthClamp
public static int ndepthClamp(long struct) Unsafe version ofdepthClamp(). -
ndepthBiasClamp
public static int ndepthBiasClamp(long struct) Unsafe version ofdepthBiasClamp(). -
nfillModeNonSolid
public static int nfillModeNonSolid(long struct) Unsafe version offillModeNonSolid(). -
ndepthBounds
public static int ndepthBounds(long struct) Unsafe version ofdepthBounds(). -
nwideLines
public static int nwideLines(long struct) Unsafe version ofwideLines(). -
nlargePoints
public static int nlargePoints(long struct) Unsafe version oflargePoints(). -
nalphaToOne
public static int nalphaToOne(long struct) Unsafe version ofalphaToOne(). -
nmultiViewport
public static int nmultiViewport(long struct) Unsafe version ofmultiViewport(). -
nsamplerAnisotropy
public static int nsamplerAnisotropy(long struct) Unsafe version ofsamplerAnisotropy(). -
ntextureCompressionETC2
public static int ntextureCompressionETC2(long struct) Unsafe version oftextureCompressionETC2(). -
ntextureCompressionASTC_LDR
public static int ntextureCompressionASTC_LDR(long struct) Unsafe version oftextureCompressionASTC_LDR(). -
ntextureCompressionBC
public static int ntextureCompressionBC(long struct) Unsafe version oftextureCompressionBC(). -
nocclusionQueryPrecise
public static int nocclusionQueryPrecise(long struct) Unsafe version ofocclusionQueryPrecise(). -
npipelineStatisticsQuery
public static int npipelineStatisticsQuery(long struct) Unsafe version ofpipelineStatisticsQuery(). -
nvertexPipelineStoresAndAtomics
public static int nvertexPipelineStoresAndAtomics(long struct) Unsafe version ofvertexPipelineStoresAndAtomics(). -
nfragmentStoresAndAtomics
public static int nfragmentStoresAndAtomics(long struct) Unsafe version offragmentStoresAndAtomics(). -
nshaderTessellationAndGeometryPointSize
public static int nshaderTessellationAndGeometryPointSize(long struct) Unsafe version ofshaderTessellationAndGeometryPointSize(). -
nshaderImageGatherExtended
public static int nshaderImageGatherExtended(long struct) Unsafe version ofshaderImageGatherExtended(). -
nshaderStorageImageExtendedFormats
public static int nshaderStorageImageExtendedFormats(long struct) Unsafe version ofshaderStorageImageExtendedFormats(). -
nshaderStorageImageMultisample
public static int nshaderStorageImageMultisample(long struct) Unsafe version ofshaderStorageImageMultisample(). -
nshaderStorageImageReadWithoutFormat
public static int nshaderStorageImageReadWithoutFormat(long struct) Unsafe version ofshaderStorageImageReadWithoutFormat(). -
nshaderStorageImageWriteWithoutFormat
public static int nshaderStorageImageWriteWithoutFormat(long struct) Unsafe version ofshaderStorageImageWriteWithoutFormat(). -
nshaderUniformBufferArrayDynamicIndexing
public static int nshaderUniformBufferArrayDynamicIndexing(long struct) Unsafe version ofshaderUniformBufferArrayDynamicIndexing(). -
nshaderSampledImageArrayDynamicIndexing
public static int nshaderSampledImageArrayDynamicIndexing(long struct) Unsafe version ofshaderSampledImageArrayDynamicIndexing(). -
nshaderStorageBufferArrayDynamicIndexing
public static int nshaderStorageBufferArrayDynamicIndexing(long struct) Unsafe version ofshaderStorageBufferArrayDynamicIndexing(). -
nshaderStorageImageArrayDynamicIndexing
public static int nshaderStorageImageArrayDynamicIndexing(long struct) Unsafe version ofshaderStorageImageArrayDynamicIndexing(). -
nshaderClipDistance
public static int nshaderClipDistance(long struct) Unsafe version ofshaderClipDistance(). -
nshaderCullDistance
public static int nshaderCullDistance(long struct) Unsafe version ofshaderCullDistance(). -
nshaderFloat64
public static int nshaderFloat64(long struct) Unsafe version ofshaderFloat64(). -
nshaderInt64
public static int nshaderInt64(long struct) Unsafe version ofshaderInt64(). -
nshaderInt16
public static int nshaderInt16(long struct) Unsafe version ofshaderInt16(). -
nshaderResourceResidency
public static int nshaderResourceResidency(long struct) Unsafe version ofshaderResourceResidency(). -
nshaderResourceMinLod
public static int nshaderResourceMinLod(long struct) Unsafe version ofshaderResourceMinLod(). -
nsparseBinding
public static int nsparseBinding(long struct) Unsafe version ofsparseBinding(). -
nsparseResidencyBuffer
public static int nsparseResidencyBuffer(long struct) Unsafe version ofsparseResidencyBuffer(). -
nsparseResidencyImage2D
public static int nsparseResidencyImage2D(long struct) Unsafe version ofsparseResidencyImage2D(). -
nsparseResidencyImage3D
public static int nsparseResidencyImage3D(long struct) Unsafe version ofsparseResidencyImage3D(). -
nsparseResidency2Samples
public static int nsparseResidency2Samples(long struct) Unsafe version ofsparseResidency2Samples(). -
nsparseResidency4Samples
public static int nsparseResidency4Samples(long struct) Unsafe version ofsparseResidency4Samples(). -
nsparseResidency8Samples
public static int nsparseResidency8Samples(long struct) Unsafe version ofsparseResidency8Samples(). -
nsparseResidency16Samples
public static int nsparseResidency16Samples(long struct) Unsafe version ofsparseResidency16Samples(). -
nsparseResidencyAliased
public static int nsparseResidencyAliased(long struct) Unsafe version ofsparseResidencyAliased(). -
nvariableMultisampleRate
public static int nvariableMultisampleRate(long struct) Unsafe version ofvariableMultisampleRate(). -
ninheritedQueries
public static int ninheritedQueries(long struct) Unsafe version ofinheritedQueries(). -
nrobustBufferAccess
public static void nrobustBufferAccess(long struct, int value) Unsafe version ofrobustBufferAccess. -
nfullDrawIndexUint32
public static void nfullDrawIndexUint32(long struct, int value) Unsafe version offullDrawIndexUint32. -
nimageCubeArray
public static void nimageCubeArray(long struct, int value) Unsafe version ofimageCubeArray. -
nindependentBlend
public static void nindependentBlend(long struct, int value) Unsafe version ofindependentBlend. -
ngeometryShader
public static void ngeometryShader(long struct, int value) Unsafe version ofgeometryShader. -
ntessellationShader
public static void ntessellationShader(long struct, int value) Unsafe version oftessellationShader. -
nsampleRateShading
public static void nsampleRateShading(long struct, int value) Unsafe version ofsampleRateShading. -
ndualSrcBlend
public static void ndualSrcBlend(long struct, int value) Unsafe version ofdualSrcBlend. -
nlogicOp
public static void nlogicOp(long struct, int value) Unsafe version oflogicOp. -
nmultiDrawIndirect
public static void nmultiDrawIndirect(long struct, int value) Unsafe version ofmultiDrawIndirect. -
ndrawIndirectFirstInstance
public static void ndrawIndirectFirstInstance(long struct, int value) Unsafe version ofdrawIndirectFirstInstance. -
ndepthClamp
public static void ndepthClamp(long struct, int value) Unsafe version ofdepthClamp. -
ndepthBiasClamp
public static void ndepthBiasClamp(long struct, int value) Unsafe version ofdepthBiasClamp. -
nfillModeNonSolid
public static void nfillModeNonSolid(long struct, int value) Unsafe version offillModeNonSolid. -
ndepthBounds
public static void ndepthBounds(long struct, int value) Unsafe version ofdepthBounds. -
nwideLines
public static void nwideLines(long struct, int value) Unsafe version ofwideLines. -
nlargePoints
public static void nlargePoints(long struct, int value) Unsafe version oflargePoints. -
nalphaToOne
public static void nalphaToOne(long struct, int value) Unsafe version ofalphaToOne. -
nmultiViewport
public static void nmultiViewport(long struct, int value) Unsafe version ofmultiViewport. -
nsamplerAnisotropy
public static void nsamplerAnisotropy(long struct, int value) Unsafe version ofsamplerAnisotropy. -
ntextureCompressionETC2
public static void ntextureCompressionETC2(long struct, int value) Unsafe version oftextureCompressionETC2. -
ntextureCompressionASTC_LDR
public static void ntextureCompressionASTC_LDR(long struct, int value) Unsafe version oftextureCompressionASTC_LDR. -
ntextureCompressionBC
public static void ntextureCompressionBC(long struct, int value) Unsafe version oftextureCompressionBC. -
nocclusionQueryPrecise
public static void nocclusionQueryPrecise(long struct, int value) Unsafe version ofocclusionQueryPrecise. -
npipelineStatisticsQuery
public static void npipelineStatisticsQuery(long struct, int value) Unsafe version ofpipelineStatisticsQuery. -
nvertexPipelineStoresAndAtomics
public static void nvertexPipelineStoresAndAtomics(long struct, int value) Unsafe version ofvertexPipelineStoresAndAtomics. -
nfragmentStoresAndAtomics
public static void nfragmentStoresAndAtomics(long struct, int value) Unsafe version offragmentStoresAndAtomics. -
nshaderTessellationAndGeometryPointSize
public static void nshaderTessellationAndGeometryPointSize(long struct, int value) Unsafe version ofshaderTessellationAndGeometryPointSize. -
nshaderImageGatherExtended
public static void nshaderImageGatherExtended(long struct, int value) Unsafe version ofshaderImageGatherExtended. -
nshaderStorageImageExtendedFormats
public static void nshaderStorageImageExtendedFormats(long struct, int value) Unsafe version ofshaderStorageImageExtendedFormats. -
nshaderStorageImageMultisample
public static void nshaderStorageImageMultisample(long struct, int value) Unsafe version ofshaderStorageImageMultisample. -
nshaderStorageImageReadWithoutFormat
public static void nshaderStorageImageReadWithoutFormat(long struct, int value) Unsafe version ofshaderStorageImageReadWithoutFormat. -
nshaderStorageImageWriteWithoutFormat
public static void nshaderStorageImageWriteWithoutFormat(long struct, int value) Unsafe version ofshaderStorageImageWriteWithoutFormat. -
nshaderUniformBufferArrayDynamicIndexing
public static void nshaderUniformBufferArrayDynamicIndexing(long struct, int value) Unsafe version ofshaderUniformBufferArrayDynamicIndexing. -
nshaderSampledImageArrayDynamicIndexing
public static void nshaderSampledImageArrayDynamicIndexing(long struct, int value) Unsafe version ofshaderSampledImageArrayDynamicIndexing. -
nshaderStorageBufferArrayDynamicIndexing
public static void nshaderStorageBufferArrayDynamicIndexing(long struct, int value) Unsafe version ofshaderStorageBufferArrayDynamicIndexing. -
nshaderStorageImageArrayDynamicIndexing
public static void nshaderStorageImageArrayDynamicIndexing(long struct, int value) Unsafe version ofshaderStorageImageArrayDynamicIndexing. -
nshaderClipDistance
public static void nshaderClipDistance(long struct, int value) Unsafe version ofshaderClipDistance. -
nshaderCullDistance
public static void nshaderCullDistance(long struct, int value) Unsafe version ofshaderCullDistance. -
nshaderFloat64
public static void nshaderFloat64(long struct, int value) Unsafe version ofshaderFloat64. -
nshaderInt64
public static void nshaderInt64(long struct, int value) Unsafe version ofshaderInt64. -
nshaderInt16
public static void nshaderInt16(long struct, int value) Unsafe version ofshaderInt16. -
nshaderResourceResidency
public static void nshaderResourceResidency(long struct, int value) Unsafe version ofshaderResourceResidency. -
nshaderResourceMinLod
public static void nshaderResourceMinLod(long struct, int value) Unsafe version ofshaderResourceMinLod. -
nsparseBinding
public static void nsparseBinding(long struct, int value) Unsafe version ofsparseBinding. -
nsparseResidencyBuffer
public static void nsparseResidencyBuffer(long struct, int value) Unsafe version ofsparseResidencyBuffer. -
nsparseResidencyImage2D
public static void nsparseResidencyImage2D(long struct, int value) Unsafe version ofsparseResidencyImage2D. -
nsparseResidencyImage3D
public static void nsparseResidencyImage3D(long struct, int value) Unsafe version ofsparseResidencyImage3D. -
nsparseResidency2Samples
public static void nsparseResidency2Samples(long struct, int value) Unsafe version ofsparseResidency2Samples. -
nsparseResidency4Samples
public static void nsparseResidency4Samples(long struct, int value) Unsafe version ofsparseResidency4Samples. -
nsparseResidency8Samples
public static void nsparseResidency8Samples(long struct, int value) Unsafe version ofsparseResidency8Samples. -
nsparseResidency16Samples
public static void nsparseResidency16Samples(long struct, int value) Unsafe version ofsparseResidency16Samples. -
nsparseResidencyAliased
public static void nsparseResidencyAliased(long struct, int value) Unsafe version ofsparseResidencyAliased. -
nvariableMultisampleRate
public static void nvariableMultisampleRate(long struct, int value) Unsafe version ofvariableMultisampleRate. -
ninheritedQueries
public static void ninheritedQueries(long struct, int value) Unsafe version ofinheritedQueries.
-