RDPipelineSpecializationConstant

    Pipeline specialization constant (used by RenderingDevice).

    RDPipelineSpecializationConstant.swift:20
    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

    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 example GString, 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.