usdrt::UsdLuxVolumeLightAPI

Defined in usdrt/scenegraph/usd/usdLux/volumeLightAPI.h

Functions

Variables

class UsdLuxVolumeLightAPI : public usdrt::UsdAPISchemaBase

This is the preferred API schema to apply to Volume type prims when adding light behaviors to a volume. At its base, this API schema has the built-in behavior of applying LightAPI to the volume and overriding the default materialSyncMode to allow the emission/glow of the bound material to affect the color of the light. But, it additionally serves as a hook for plugins to attach additional properties to “volume lights” through the creation of API schemas which are authored to auto-apply to VolumeLightAPI.

For any described attribute Fallback Value or Allowed Values below that are text/tokens, the actual token is published and defined in UsdLuxTokens. So to set an attribute to the value “rightHanded”, use UsdLuxTokens->rightHanded as the value.

See also

Usd_AutoAppliedAPISchemas

Public Functions

inline explicit UsdLuxVolumeLightAPI(const UsdPrim &prim = UsdPrim())

Construct a UsdLuxVolumeLightAPI on UsdPrim prim. Equivalent to UsdLuxVolumeLightAPI::Get(prim.GetStage(), prim.GetPath()) for a valid prim , but will not immediately throw an error for an invalid prim.

inline explicit UsdLuxVolumeLightAPI(const UsdSchemaBase &schemaObj)

Construct a UsdLuxVolumeLightAPI on the prim held by schemaObj . Should be preferred over UsdLuxVolumeLightAPI(schemaObj.GetPrim()), as it preserves SchemaBase state.

inline virtual ~UsdLuxVolumeLightAPI()

Destructor.

inline operator bool() const

Boolean operator.

Returns

Return true if the contained prim is has this api schema applied using HasAPI, and false otherwise.

inline UsdAttribute GetLightShaderIdAttr() const

Declaration

uniform token light:shaderId = "VolumeLight"

C++ Type

TfToken

Usd Type

SdfValueTypeNames->Token

Variability

SdfVariabilityUniform

inline UsdAttribute CreateLightShaderIdAttr() const

See GetLightShaderIdAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetLightMaterialSyncModeAttr() const

Declaration

uniform token light:materialSyncMode = "materialGlowTintsLight"

C++ Type

TfToken

Usd Type

SdfValueTypeNames->Token

Variability

SdfVariabilityUniform

inline UsdAttribute CreateLightMaterialSyncModeAttr() const

See GetLightMaterialSyncModeAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

UsdPrim GetPrim() const

Return this schema object’s held prim.

SdfPath GetPath() const

Return the SdfPath to this schema object’s held prim.

Public Static Functions

static inline UsdLuxVolumeLightAPI Apply(const UsdPrim &prim)

Applies this single-apply API schema to the given prim. This information is stored by adding “VolumeLightAPI” to the token-valued, listOp metadata apiSchemas on the prim.

See also

UsdPrim::GetAppliedSchemas()

See also

UsdPrim::HasAPI()

See also

UsdPrim::ApplyAPI()

See also

UsdPrim::RemoveAPI()

Returns

A valid UsdLuxVolumeLightAPI object is returned upon success. An invalid (or empty) UsdLuxVolumeLightAPI object is returned upon failure. See UsdPrim::ApplyAPI() for conditions resulting in failure.

Public Static Attributes

static const UsdSchemaType schemaType = UsdSchemaType::SingleApplyAPI

Compile time constant representing what kind of schema this class is.

See also

UsdSchemaType

Protected Functions

inline const TfToken &_GetInstanceName() const

Returns the instance name of the API schema object belonging to a multiple-apply API schema.

The returned instance name will be empty for non-applied and single-apply API schemas.