class Limits


The set of capabilities and constraints for a GPU device.

Summary

Public constructors

Limits(
    maxTextureDimension1D: Int,
    maxTextureDimension2D: Int,
    maxTextureDimension3D: Int,
    maxTextureArrayLayers: Int,
    maxBindGroups: Int,
    maxBindGroupsPlusVertexBuffers: Int,
    maxBindingsPerBindGroup: Int,
    maxDynamicUniformBuffersPerPipelineLayout: Int,
    maxDynamicStorageBuffersPerPipelineLayout: Int,
    maxSampledTexturesPerShaderStage: Int,
    maxSamplersPerShaderStage: Int,
    maxStorageBuffersPerShaderStage: Int,
    maxStorageTexturesPerShaderStage: Int,
    maxUniformBuffersPerShaderStage: Int,
    maxUniformBufferBindingSize: Long,
    maxStorageBufferBindingSize: Long,
    minUniformBufferOffsetAlignment: Int,
    minStorageBufferOffsetAlignment: Int,
    maxVertexBuffers: Int,
    maxBufferSize: Long,
    maxVertexAttributes: Int,
    maxVertexBufferArrayStride: Int,
    maxInterStageShaderVariables: Int,
    maxColorAttachments: Int,
    maxColorAttachmentBytesPerSample: Int,
    maxComputeWorkgroupStorageSize: Int,
    maxComputeInvocationsPerWorkgroup: Int,
    maxComputeWorkgroupSizeX: Int,
    maxComputeWorkgroupSizeY: Int,
    maxComputeWorkgroupSizeZ: Int,
    maxComputeWorkgroupsPerDimension: Int,
    maxImmediateSize: Int
)

Public constructors

Limits

Added in 1.0.0-alpha01
Limits(
    maxTextureDimension1D: Int = Constants.LIMIT_U32_UNDEFINED,
    maxTextureDimension2D: Int = Constants.LIMIT_U32_UNDEFINED,
    maxTextureDimension3D: Int = Constants.LIMIT_U32_UNDEFINED,
    maxTextureArrayLayers: Int = Constants.LIMIT_U32_UNDEFINED,
    maxBindGroups: Int = Constants.LIMIT_U32_UNDEFINED,
    maxBindGroupsPlusVertexBuffers: Int = Constants.LIMIT_U32_UNDEFINED,
    maxBindingsPerBindGroup: Int = Constants.LIMIT_U32_UNDEFINED,
    maxDynamicUniformBuffersPerPipelineLayout: Int = Constants.LIMIT_U32_UNDEFINED,
    maxDynamicStorageBuffersPerPipelineLayout: Int = Constants.LIMIT_U32_UNDEFINED,
    maxSampledTexturesPerShaderStage: Int = Constants.LIMIT_U32_UNDEFINED,
    maxSamplersPerShaderStage: Int = Constants.LIMIT_U32_UNDEFINED,
    maxStorageBuffersPerShaderStage: Int = Constants.LIMIT_U32_UNDEFINED,
    maxStorageTexturesPerShaderStage: Int = Constants.LIMIT_U32_UNDEFINED,
    maxUniformBuffersPerShaderStage: Int = Constants.LIMIT_U32_UNDEFINED,
    maxUniformBufferBindingSize: Long = Constants.LIMIT_U64_UNDEFINED,
    maxStorageBufferBindingSize: Long = Constants.LIMIT_U64_UNDEFINED,
    minUniformBufferOffsetAlignment: Int = Constants.LIMIT_U32_UNDEFINED,
    minStorageBufferOffsetAlignment: Int = Constants.LIMIT_U32_UNDEFINED,
    maxVertexBuffers: Int = Constants.LIMIT_U32_UNDEFINED,
    maxBufferSize: Long = Constants.LIMIT_U64_UNDEFINED,
    maxVertexAttributes: Int = Constants.LIMIT_U32_UNDEFINED,
    maxVertexBufferArrayStride: Int = Constants.LIMIT_U32_UNDEFINED,
    maxInterStageShaderVariables: Int = Constants.LIMIT_U32_UNDEFINED,
    maxColorAttachments: Int = Constants.LIMIT_U32_UNDEFINED,
    maxColorAttachmentBytesPerSample: Int = Constants.LIMIT_U32_UNDEFINED,
    maxComputeWorkgroupStorageSize: Int = Constants.LIMIT_U32_UNDEFINED,
    maxComputeInvocationsPerWorkgroup: Int = Constants.LIMIT_U32_UNDEFINED,
    maxComputeWorkgroupSizeX: Int = Constants.LIMIT_U32_UNDEFINED,
    maxComputeWorkgroupSizeY: Int = Constants.LIMIT_U32_UNDEFINED,
    maxComputeWorkgroupSizeZ: Int = Constants.LIMIT_U32_UNDEFINED,
    maxComputeWorkgroupsPerDimension: Int = Constants.LIMIT_U32_UNDEFINED,
    maxImmediateSize: Int = Constants.LIMIT_U32_UNDEFINED
)

Public properties

maxBindGroups

Added in 1.0.0-alpha01
var maxBindGroupsInt

maxBindGroupsPlusVertexBuffers

Added in 1.0.0-alpha01
var maxBindGroupsPlusVertexBuffersInt

maxBindingsPerBindGroup

Added in 1.0.0-alpha01
var maxBindingsPerBindGroupInt

maxBufferSize

Added in 1.0.0-alpha01
var maxBufferSizeLong

maxColorAttachmentBytesPerSample

Added in 1.0.0-alpha01
var maxColorAttachmentBytesPerSampleInt

maxColorAttachments

Added in 1.0.0-alpha01
var maxColorAttachmentsInt

maxComputeInvocationsPerWorkgroup

Added in 1.0.0-alpha01
var maxComputeInvocationsPerWorkgroupInt

maxComputeWorkgroupSizeX

Added in 1.0.0-alpha01
var maxComputeWorkgroupSizeXInt

maxComputeWorkgroupSizeY

Added in 1.0.0-alpha01
var maxComputeWorkgroupSizeYInt

maxComputeWorkgroupSizeZ

Added in 1.0.0-alpha01
var maxComputeWorkgroupSizeZInt

maxComputeWorkgroupStorageSize

Added in 1.0.0-alpha01
var maxComputeWorkgroupStorageSizeInt

maxComputeWorkgroupsPerDimension

Added in 1.0.0-alpha01
var maxComputeWorkgroupsPerDimensionInt

maxDynamicStorageBuffersPerPipelineLayout

Added in 1.0.0-alpha01
var maxDynamicStorageBuffersPerPipelineLayoutInt

maxDynamicUniformBuffersPerPipelineLayout

Added in 1.0.0-alpha01
var maxDynamicUniformBuffersPerPipelineLayoutInt

maxImmediateSize

Added in 1.0.0-alpha01
var maxImmediateSizeInt

maxInterStageShaderVariables

Added in 1.0.0-alpha01
var maxInterStageShaderVariablesInt

maxSampledTexturesPerShaderStage

Added in 1.0.0-alpha01
var maxSampledTexturesPerShaderStageInt

maxSamplersPerShaderStage

Added in 1.0.0-alpha01
var maxSamplersPerShaderStageInt

maxStorageBufferBindingSize

Added in 1.0.0-alpha01
var maxStorageBufferBindingSizeLong

maxStorageBuffersPerShaderStage

Added in 1.0.0-alpha01
var maxStorageBuffersPerShaderStageInt

maxStorageTexturesPerShaderStage

Added in 1.0.0-alpha01
var maxStorageTexturesPerShaderStageInt

maxTextureArrayLayers

Added in 1.0.0-alpha01
var maxTextureArrayLayersInt

maxTextureDimension1D

Added in 1.0.0-alpha01
var maxTextureDimension1DInt

maxTextureDimension2D

Added in 1.0.0-alpha01
var maxTextureDimension2DInt

maxTextureDimension3D

Added in 1.0.0-alpha01
var maxTextureDimension3DInt

maxUniformBufferBindingSize

Added in 1.0.0-alpha01
var maxUniformBufferBindingSizeLong

maxUniformBuffersPerShaderStage

Added in 1.0.0-alpha01
var maxUniformBuffersPerShaderStageInt

maxVertexAttributes

Added in 1.0.0-alpha01
var maxVertexAttributesInt

maxVertexBufferArrayStride

Added in 1.0.0-alpha01
var maxVertexBufferArrayStrideInt

maxVertexBuffers

Added in 1.0.0-alpha01
var maxVertexBuffersInt

minStorageBufferOffsetAlignment

Added in 1.0.0-alpha01
var minStorageBufferOffsetAlignmentInt

minUniformBufferOffsetAlignment

Added in 1.0.0-alpha01
var minUniformBufferOffsetAlignmentInt