Class VulkanPhysicalDeviceFeatures10.Builder

java.lang.Object
com.io7m.jcoronado.api.VulkanPhysicalDeviceFeatures10.Builder
Enclosing class:
VulkanPhysicalDeviceFeatures10

public static final class VulkanPhysicalDeviceFeatures10.Builder extends Object
Builds instances of type VulkanPhysicalDeviceFeatures10. Initialize attributes and then invoke the build() method to create an immutable instance.

Builder is not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.

  • Method Details

    • from

      Fill a builder with attribute values from the provided VulkanPhysicalDeviceFeatures10Type instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • setAlphaToOne

      public final VulkanPhysicalDeviceFeatures10.Builder setAlphaToOne(boolean alphaToOne)
      Initializes the value for the alphaToOne attribute.

      If not set, this attribute will have a default value as returned by the initializer of alphaToOne.

      Parameters:
      alphaToOne - The value for alphaToOne
      Returns:
      this builder for use in a chained invocation
    • setDepthBiasClamp

      public final VulkanPhysicalDeviceFeatures10.Builder setDepthBiasClamp(boolean depthBiasClamp)
      Initializes the value for the depthBiasClamp attribute.

      If not set, this attribute will have a default value as returned by the initializer of depthBiasClamp.

      Parameters:
      depthBiasClamp - The value for depthBiasClamp
      Returns:
      this builder for use in a chained invocation
    • setDepthBounds

      public final VulkanPhysicalDeviceFeatures10.Builder setDepthBounds(boolean depthBounds)
      Initializes the value for the depthBounds attribute.

      If not set, this attribute will have a default value as returned by the initializer of depthBounds.

      Parameters:
      depthBounds - The value for depthBounds
      Returns:
      this builder for use in a chained invocation
    • setDepthClamp

      public final VulkanPhysicalDeviceFeatures10.Builder setDepthClamp(boolean depthClamp)
      Initializes the value for the depthClamp attribute.

      If not set, this attribute will have a default value as returned by the initializer of depthClamp.

      Parameters:
      depthClamp - The value for depthClamp
      Returns:
      this builder for use in a chained invocation
    • setDrawIndirectFirstInstance

      public final VulkanPhysicalDeviceFeatures10.Builder setDrawIndirectFirstInstance(boolean drawIndirectFirstInstance)
      Initializes the value for the drawIndirectFirstInstance attribute.

      If not set, this attribute will have a default value as returned by the initializer of drawIndirectFirstInstance.

      Parameters:
      drawIndirectFirstInstance - The value for drawIndirectFirstInstance
      Returns:
      this builder for use in a chained invocation
    • setDualSrcBlend

      public final VulkanPhysicalDeviceFeatures10.Builder setDualSrcBlend(boolean dualSrcBlend)
      Initializes the value for the dualSrcBlend attribute.

      If not set, this attribute will have a default value as returned by the initializer of dualSrcBlend.

      Parameters:
      dualSrcBlend - The value for dualSrcBlend
      Returns:
      this builder for use in a chained invocation
    • setFillModeNonSolid

      public final VulkanPhysicalDeviceFeatures10.Builder setFillModeNonSolid(boolean fillModeNonSolid)
      Initializes the value for the fillModeNonSolid attribute.

      If not set, this attribute will have a default value as returned by the initializer of fillModeNonSolid.

      Parameters:
      fillModeNonSolid - The value for fillModeNonSolid
      Returns:
      this builder for use in a chained invocation
    • setFragmentStoresAndAtomics

      public final VulkanPhysicalDeviceFeatures10.Builder setFragmentStoresAndAtomics(boolean fragmentStoresAndAtomics)
      Initializes the value for the fragmentStoresAndAtomics attribute.

      If not set, this attribute will have a default value as returned by the initializer of fragmentStoresAndAtomics.

      Parameters:
      fragmentStoresAndAtomics - The value for fragmentStoresAndAtomics
      Returns:
      this builder for use in a chained invocation
    • setFullDrawIndexUint32

      public final VulkanPhysicalDeviceFeatures10.Builder setFullDrawIndexUint32(boolean fullDrawIndexUint32)
      Initializes the value for the fullDrawIndexUint32 attribute.

      If not set, this attribute will have a default value as returned by the initializer of fullDrawIndexUint32.

      Parameters:
      fullDrawIndexUint32 - The value for fullDrawIndexUint32
      Returns:
      this builder for use in a chained invocation
    • setGeometryShader

      public final VulkanPhysicalDeviceFeatures10.Builder setGeometryShader(boolean geometryShader)
      Initializes the value for the geometryShader attribute.

      If not set, this attribute will have a default value as returned by the initializer of geometryShader.

      Parameters:
      geometryShader - The value for geometryShader
      Returns:
      this builder for use in a chained invocation
    • setImageCubeArray

      public final VulkanPhysicalDeviceFeatures10.Builder setImageCubeArray(boolean imageCubeArray)
      Initializes the value for the imageCubeArray attribute.

      If not set, this attribute will have a default value as returned by the initializer of imageCubeArray.

      Parameters:
      imageCubeArray - The value for imageCubeArray
      Returns:
      this builder for use in a chained invocation
    • setIndependentBlend

      public final VulkanPhysicalDeviceFeatures10.Builder setIndependentBlend(boolean independentBlend)
      Initializes the value for the independentBlend attribute.

      If not set, this attribute will have a default value as returned by the initializer of independentBlend.

      Parameters:
      independentBlend - The value for independentBlend
      Returns:
      this builder for use in a chained invocation
    • setInheritedQueries

      public final VulkanPhysicalDeviceFeatures10.Builder setInheritedQueries(boolean inheritedQueries)
      Initializes the value for the inheritedQueries attribute.

      If not set, this attribute will have a default value as returned by the initializer of inheritedQueries.

      Parameters:
      inheritedQueries - The value for inheritedQueries
      Returns:
      this builder for use in a chained invocation
    • setLargePoints

      public final VulkanPhysicalDeviceFeatures10.Builder setLargePoints(boolean largePoints)
      Initializes the value for the largePoints attribute.

      If not set, this attribute will have a default value as returned by the initializer of largePoints.

      Parameters:
      largePoints - The value for largePoints
      Returns:
      this builder for use in a chained invocation
    • setLogicOp

      public final VulkanPhysicalDeviceFeatures10.Builder setLogicOp(boolean logicOp)
      Initializes the value for the logicOp attribute.

      If not set, this attribute will have a default value as returned by the initializer of logicOp.

      Parameters:
      logicOp - The value for logicOp
      Returns:
      this builder for use in a chained invocation
    • setMultiDrawIndirect

      public final VulkanPhysicalDeviceFeatures10.Builder setMultiDrawIndirect(boolean multiDrawIndirect)
      Initializes the value for the multiDrawIndirect attribute.

      If not set, this attribute will have a default value as returned by the initializer of multiDrawIndirect.

      Parameters:
      multiDrawIndirect - The value for multiDrawIndirect
      Returns:
      this builder for use in a chained invocation
    • setMultiViewport

      public final VulkanPhysicalDeviceFeatures10.Builder setMultiViewport(boolean multiViewport)
      Initializes the value for the multiViewport attribute.

      If not set, this attribute will have a default value as returned by the initializer of multiViewport.

      Parameters:
      multiViewport - The value for multiViewport
      Returns:
      this builder for use in a chained invocation
    • setOcclusionQueryPrecise

      public final VulkanPhysicalDeviceFeatures10.Builder setOcclusionQueryPrecise(boolean occlusionQueryPrecise)
      Initializes the value for the occlusionQueryPrecise attribute.

      If not set, this attribute will have a default value as returned by the initializer of occlusionQueryPrecise.

      Parameters:
      occlusionQueryPrecise - The value for occlusionQueryPrecise
      Returns:
      this builder for use in a chained invocation
    • setPipelineStatisticsQuery

      public final VulkanPhysicalDeviceFeatures10.Builder setPipelineStatisticsQuery(boolean pipelineStatisticsQuery)
      Initializes the value for the pipelineStatisticsQuery attribute.

      If not set, this attribute will have a default value as returned by the initializer of pipelineStatisticsQuery.

      Parameters:
      pipelineStatisticsQuery - The value for pipelineStatisticsQuery
      Returns:
      this builder for use in a chained invocation
    • setRobustBufferAccess

      public final VulkanPhysicalDeviceFeatures10.Builder setRobustBufferAccess(boolean robustBufferAccess)
      Initializes the value for the robustBufferAccess attribute.

      If not set, this attribute will have a default value as returned by the initializer of robustBufferAccess.

      Parameters:
      robustBufferAccess - The value for robustBufferAccess
      Returns:
      this builder for use in a chained invocation
    • setSamplerAnisotropy

      public final VulkanPhysicalDeviceFeatures10.Builder setSamplerAnisotropy(boolean samplerAnisotropy)
      Initializes the value for the samplerAnisotropy attribute.

      If not set, this attribute will have a default value as returned by the initializer of samplerAnisotropy.

      Parameters:
      samplerAnisotropy - The value for samplerAnisotropy
      Returns:
      this builder for use in a chained invocation
    • setSampleRateShading

      public final VulkanPhysicalDeviceFeatures10.Builder setSampleRateShading(boolean sampleRateShading)
      Initializes the value for the sampleRateShading attribute.

      If not set, this attribute will have a default value as returned by the initializer of sampleRateShading.

      Parameters:
      sampleRateShading - The value for sampleRateShading
      Returns:
      this builder for use in a chained invocation
    • setShaderClipDistance

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderClipDistance(boolean shaderClipDistance)
      Initializes the value for the shaderClipDistance attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderClipDistance.

      Parameters:
      shaderClipDistance - The value for shaderClipDistance
      Returns:
      this builder for use in a chained invocation
    • setShaderCullDistance

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderCullDistance(boolean shaderCullDistance)
      Initializes the value for the shaderCullDistance attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderCullDistance.

      Parameters:
      shaderCullDistance - The value for shaderCullDistance
      Returns:
      this builder for use in a chained invocation
    • setShaderFloat64

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderFloat64(boolean shaderFloat64)
      Initializes the value for the shaderFloat64 attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderFloat64.

      Parameters:
      shaderFloat64 - The value for shaderFloat64
      Returns:
      this builder for use in a chained invocation
    • setShaderImageGatherExtended

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderImageGatherExtended(boolean shaderImageGatherExtended)
      Initializes the value for the shaderImageGatherExtended attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderImageGatherExtended.

      Parameters:
      shaderImageGatherExtended - The value for shaderImageGatherExtended
      Returns:
      this builder for use in a chained invocation
    • setShaderInt16

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderInt16(boolean shaderInt16)
      Initializes the value for the shaderInt16 attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderInt16.

      Parameters:
      shaderInt16 - The value for shaderInt16
      Returns:
      this builder for use in a chained invocation
    • setShaderInt64

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderInt64(boolean shaderInt64)
      Initializes the value for the shaderInt64 attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderInt64.

      Parameters:
      shaderInt64 - The value for shaderInt64
      Returns:
      this builder for use in a chained invocation
    • setShaderResourceMinLod

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderResourceMinLod(boolean shaderResourceMinLod)
      Initializes the value for the shaderResourceMinLod attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderResourceMinLod.

      Parameters:
      shaderResourceMinLod - The value for shaderResourceMinLod
      Returns:
      this builder for use in a chained invocation
    • setShaderResourceResidency

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderResourceResidency(boolean shaderResourceResidency)
      Initializes the value for the shaderResourceResidency attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderResourceResidency.

      Parameters:
      shaderResourceResidency - The value for shaderResourceResidency
      Returns:
      this builder for use in a chained invocation
    • setShaderSampledImageArrayDynamicIndexing

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderSampledImageArrayDynamicIndexing(boolean shaderSampledImageArrayDynamicIndexing)
      Initializes the value for the shaderSampledImageArrayDynamicIndexing attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderSampledImageArrayDynamicIndexing.

      Parameters:
      shaderSampledImageArrayDynamicIndexing - The value for shaderSampledImageArrayDynamicIndexing
      Returns:
      this builder for use in a chained invocation
    • setShaderStorageBufferArrayDynamicIndexing

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderStorageBufferArrayDynamicIndexing(boolean shaderStorageBufferArrayDynamicIndexing)
      Initializes the value for the shaderStorageBufferArrayDynamicIndexing attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderStorageBufferArrayDynamicIndexing.

      Parameters:
      shaderStorageBufferArrayDynamicIndexing - The value for shaderStorageBufferArrayDynamicIndexing
      Returns:
      this builder for use in a chained invocation
    • setShaderStorageImageArrayDynamicIndexing

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderStorageImageArrayDynamicIndexing(boolean shaderStorageImageArrayDynamicIndexing)
      Initializes the value for the shaderStorageImageArrayDynamicIndexing attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderStorageImageArrayDynamicIndexing.

      Parameters:
      shaderStorageImageArrayDynamicIndexing - The value for shaderStorageImageArrayDynamicIndexing
      Returns:
      this builder for use in a chained invocation
    • setShaderStorageImageExtendedFormats

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderStorageImageExtendedFormats(boolean shaderStorageImageExtendedFormats)
      Initializes the value for the shaderStorageImageExtendedFormats attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderStorageImageExtendedFormats.

      Parameters:
      shaderStorageImageExtendedFormats - The value for shaderStorageImageExtendedFormats
      Returns:
      this builder for use in a chained invocation
    • setShaderStorageImageMultisample

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderStorageImageMultisample(boolean shaderStorageImageMultisample)
      Initializes the value for the shaderStorageImageMultisample attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderStorageImageMultisample.

      Parameters:
      shaderStorageImageMultisample - The value for shaderStorageImageMultisample
      Returns:
      this builder for use in a chained invocation
    • setShaderStorageImageReadWithoutFormat

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderStorageImageReadWithoutFormat(boolean shaderStorageImageReadWithoutFormat)
      Initializes the value for the shaderStorageImageReadWithoutFormat attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderStorageImageReadWithoutFormat.

      Parameters:
      shaderStorageImageReadWithoutFormat - The value for shaderStorageImageReadWithoutFormat
      Returns:
      this builder for use in a chained invocation
    • setShaderStorageImageWriteWithoutFormat

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderStorageImageWriteWithoutFormat(boolean shaderStorageImageWriteWithoutFormat)
      Initializes the value for the shaderStorageImageWriteWithoutFormat attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderStorageImageWriteWithoutFormat.

      Parameters:
      shaderStorageImageWriteWithoutFormat - The value for shaderStorageImageWriteWithoutFormat
      Returns:
      this builder for use in a chained invocation
    • setShaderTessellationAndGeometryPointSize

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderTessellationAndGeometryPointSize(boolean shaderTessellationAndGeometryPointSize)
      Initializes the value for the shaderTessellationAndGeometryPointSize attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderTessellationAndGeometryPointSize.

      Parameters:
      shaderTessellationAndGeometryPointSize - The value for shaderTessellationAndGeometryPointSize
      Returns:
      this builder for use in a chained invocation
    • setShaderUniformBufferArrayDynamicIndexing

      public final VulkanPhysicalDeviceFeatures10.Builder setShaderUniformBufferArrayDynamicIndexing(boolean shaderUniformBufferArrayDynamicIndexing)
      Initializes the value for the shaderUniformBufferArrayDynamicIndexing attribute.

      If not set, this attribute will have a default value as returned by the initializer of shaderUniformBufferArrayDynamicIndexing.

      Parameters:
      shaderUniformBufferArrayDynamicIndexing - The value for shaderUniformBufferArrayDynamicIndexing
      Returns:
      this builder for use in a chained invocation
    • setSparseBinding

      public final VulkanPhysicalDeviceFeatures10.Builder setSparseBinding(boolean sparseBinding)
      Initializes the value for the sparseBinding attribute.

      If not set, this attribute will have a default value as returned by the initializer of sparseBinding.

      Parameters:
      sparseBinding - The value for sparseBinding
      Returns:
      this builder for use in a chained invocation
    • setSparseResidency16Samples

      public final VulkanPhysicalDeviceFeatures10.Builder setSparseResidency16Samples(boolean sparseResidency16Samples)
      Initializes the value for the sparseResidency16Samples attribute.

      If not set, this attribute will have a default value as returned by the initializer of sparseResidency16Samples.

      Parameters:
      sparseResidency16Samples - The value for sparseResidency16Samples
      Returns:
      this builder for use in a chained invocation
    • setSparseResidency2Samples

      public final VulkanPhysicalDeviceFeatures10.Builder setSparseResidency2Samples(boolean sparseResidency2Samples)
      Initializes the value for the sparseResidency2Samples attribute.

      If not set, this attribute will have a default value as returned by the initializer of sparseResidency2Samples.

      Parameters:
      sparseResidency2Samples - The value for sparseResidency2Samples
      Returns:
      this builder for use in a chained invocation
    • setSparseResidency4Samples

      public final VulkanPhysicalDeviceFeatures10.Builder setSparseResidency4Samples(boolean sparseResidency4Samples)
      Initializes the value for the sparseResidency4Samples attribute.

      If not set, this attribute will have a default value as returned by the initializer of sparseResidency4Samples.

      Parameters:
      sparseResidency4Samples - The value for sparseResidency4Samples
      Returns:
      this builder for use in a chained invocation
    • setSparseResidency8Samples

      public final VulkanPhysicalDeviceFeatures10.Builder setSparseResidency8Samples(boolean sparseResidency8Samples)
      Initializes the value for the sparseResidency8Samples attribute.

      If not set, this attribute will have a default value as returned by the initializer of sparseResidency8Samples.

      Parameters:
      sparseResidency8Samples - The value for sparseResidency8Samples
      Returns:
      this builder for use in a chained invocation
    • setSparseResidencyAliased

      public final VulkanPhysicalDeviceFeatures10.Builder setSparseResidencyAliased(boolean sparseResidencyAliased)
      Initializes the value for the sparseResidencyAliased attribute.

      If not set, this attribute will have a default value as returned by the initializer of sparseResidencyAliased.

      Parameters:
      sparseResidencyAliased - The value for sparseResidencyAliased
      Returns:
      this builder for use in a chained invocation
    • setSparseResidencyBuffer

      public final VulkanPhysicalDeviceFeatures10.Builder setSparseResidencyBuffer(boolean sparseResidencyBuffer)
      Initializes the value for the sparseResidencyBuffer attribute.

      If not set, this attribute will have a default value as returned by the initializer of sparseResidencyBuffer.

      Parameters:
      sparseResidencyBuffer - The value for sparseResidencyBuffer
      Returns:
      this builder for use in a chained invocation
    • setSparseResidencyImage2D

      public final VulkanPhysicalDeviceFeatures10.Builder setSparseResidencyImage2D(boolean sparseResidencyImage2D)
      Initializes the value for the sparseResidencyImage2D attribute.

      If not set, this attribute will have a default value as returned by the initializer of sparseResidencyImage2D.

      Parameters:
      sparseResidencyImage2D - The value for sparseResidencyImage2D
      Returns:
      this builder for use in a chained invocation
    • setSparseResidencyImage3D

      public final VulkanPhysicalDeviceFeatures10.Builder setSparseResidencyImage3D(boolean sparseResidencyImage3D)
      Initializes the value for the sparseResidencyImage3D attribute.

      If not set, this attribute will have a default value as returned by the initializer of sparseResidencyImage3D.

      Parameters:
      sparseResidencyImage3D - The value for sparseResidencyImage3D
      Returns:
      this builder for use in a chained invocation
    • setTessellationShader

      public final VulkanPhysicalDeviceFeatures10.Builder setTessellationShader(boolean tessellationShader)
      Initializes the value for the tessellationShader attribute.

      If not set, this attribute will have a default value as returned by the initializer of tessellationShader.

      Parameters:
      tessellationShader - The value for tessellationShader
      Returns:
      this builder for use in a chained invocation
    • setTextureCompressionASTC_LDR

      public final VulkanPhysicalDeviceFeatures10.Builder setTextureCompressionASTC_LDR(boolean textureCompressionASTC_LDR)
      Initializes the value for the textureCompressionASTC_LDR attribute.

      If not set, this attribute will have a default value as returned by the initializer of textureCompressionASTC_LDR.

      Parameters:
      textureCompressionASTC_LDR - The value for textureCompressionASTC_LDR
      Returns:
      this builder for use in a chained invocation
    • setTextureCompressionBC

      public final VulkanPhysicalDeviceFeatures10.Builder setTextureCompressionBC(boolean textureCompressionBC)
      Initializes the value for the textureCompressionBC attribute.

      If not set, this attribute will have a default value as returned by the initializer of textureCompressionBC.

      Parameters:
      textureCompressionBC - The value for textureCompressionBC
      Returns:
      this builder for use in a chained invocation
    • setTextureCompressionETC2

      public final VulkanPhysicalDeviceFeatures10.Builder setTextureCompressionETC2(boolean textureCompressionETC2)
      Initializes the value for the textureCompressionETC2 attribute.

      If not set, this attribute will have a default value as returned by the initializer of textureCompressionETC2.

      Parameters:
      textureCompressionETC2 - The value for textureCompressionETC2
      Returns:
      this builder for use in a chained invocation
    • setVariableMultisampleRate

      public final VulkanPhysicalDeviceFeatures10.Builder setVariableMultisampleRate(boolean variableMultisampleRate)
      Initializes the value for the variableMultisampleRate attribute.

      If not set, this attribute will have a default value as returned by the initializer of variableMultisampleRate.

      Parameters:
      variableMultisampleRate - The value for variableMultisampleRate
      Returns:
      this builder for use in a chained invocation
    • setVertexPipelineStoresAndAtomics

      public final VulkanPhysicalDeviceFeatures10.Builder setVertexPipelineStoresAndAtomics(boolean vertexPipelineStoresAndAtomics)
      Initializes the value for the vertexPipelineStoresAndAtomics attribute.

      If not set, this attribute will have a default value as returned by the initializer of vertexPipelineStoresAndAtomics.

      Parameters:
      vertexPipelineStoresAndAtomics - The value for vertexPipelineStoresAndAtomics
      Returns:
      this builder for use in a chained invocation
    • setWideLines

      public final VulkanPhysicalDeviceFeatures10.Builder setWideLines(boolean wideLines)
      Initializes the value for the wideLines attribute.

      If not set, this attribute will have a default value as returned by the initializer of wideLines.

      Parameters:
      wideLines - The value for wideLines
      Returns:
      this builder for use in a chained invocation
    • build

      Returns:
      An immutable instance of VulkanPhysicalDeviceFeatures10
      Throws:
      IllegalStateException - if any required attributes are missing