RDPipelineSpecializationConstant
Pipeline specialization constant (used by RenderingDevice
).
class RDPipelineSpecializationConstant
A specialization constant is a way to create additional variants of shaders without actually increasing the number of shader versions that are compiled. This allows improving performance by reducing the number of shader versions and reducing if
branching, while still allowing shaders to be flexible for different use cases.
This object is used by RenderingDevice
.
Superclasses
class RefCounted
Base class for reference-counted objects.
Citizens in SwiftGodot
Conformances
protocol CustomStringConvertible
A type with a customized textual representation.
protocol Equatable
A type that can be compared for value equality.
protocol Hashable
A type that can be hashed into a
Hasher
to produce an integer hash value.protocol Identifiable<ID>
A class of types whose instances hold the value of an entity with stable identity.
protocol VariantRepresentable
Types that conform to VariantRepresentable can be stored directly in
Variant
with no conversion. These include all of the Variant types from Godot (for exampleGString
,Rect
,Plane
), Godot objects (those that subclass SwiftGodot.Object) as well as the built-in Swift types UInt8, Int64 and Double.protocol VariantStorable
Types that conform to VariantStorable can be stored in a Variant and can be extracted back out of a Variant.
Type members
Instance members
var constantId: UInt32
The identifier of the specialization constant. This is a value starting from
0
and that increments for every different specialization constant for a given shader.var value: Variant
The specialization constant’s value. Only [bool], integer and float types are valid for specialization constants.