All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UsdLuxLight Class Reference

Base class for all lights. More...

+ Inheritance diagram for UsdLuxLight:

Public Member Functions

 UsdLuxLight (const UsdPrim &prim=UsdPrim())
 Construct a UsdLuxLight on UsdPrim prim . More...
 
 UsdLuxLight (const UsdSchemaBase &schemaObj)
 Construct a UsdLuxLight on the prim held by schemaObj . More...
 
virtual USDLUX_API ~UsdLuxLight ()
 Destructor. More...
 
USDLUX_API UsdAttribute GetIntensityAttr () const
 Scales the power of the light linearly. More...
 
USDLUX_API UsdAttribute CreateIntensityAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetIntensityAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDLUX_API UsdAttribute GetExposureAttr () const
 Scales the power of the light exponentially as a power of 2 (similar to an F-stop control over exposure). More...
 
USDLUX_API UsdAttribute CreateExposureAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetExposureAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDLUX_API UsdAttribute GetDiffuseAttr () const
 A multiplier for the effect of this light on the diffuse response of materials. More...
 
USDLUX_API UsdAttribute CreateDiffuseAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetDiffuseAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDLUX_API UsdAttribute GetSpecularAttr () const
 A multiplier for the effect of this light on the specular response of materials. More...
 
USDLUX_API UsdAttribute CreateSpecularAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetSpecularAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDLUX_API UsdAttribute GetNormalizeAttr () const
 Normalizes power by the surface area of the light. More...
 
USDLUX_API UsdAttribute CreateNormalizeAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetNormalizeAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDLUX_API UsdAttribute GetColorAttr () const
 The color of emitted light, in energy-linear terms. More...
 
USDLUX_API UsdAttribute CreateColorAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetColorAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDLUX_API UsdAttribute GetEnableColorTemperatureAttr () const
 Enables using colorTemperature. More...
 
USDLUX_API UsdAttribute CreateEnableColorTemperatureAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetEnableColorTemperatureAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDLUX_API UsdAttribute GetColorTemperatureAttr () const
 Color temperature, in degrees Kelvin, representing the white point. More...
 
USDLUX_API UsdAttribute CreateColorTemperatureAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetColorTemperatureAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDLUX_API UsdRelationship GetFiltersRel () const
 Relationship to the light filters that apply to this light. More...
 
USDLUX_API UsdRelationship CreateFiltersRel () const
 See GetFiltersRel(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDLUX_API GfVec3f ComputeBaseEmission () const
 Computes the base emission (aka radiant flux density, aka energy per unit area), incorporating the parameters for intensity, exposure, color, and colorTemperature attributes. More...
 
USDLUX_API UsdCollectionAPI GetLightLinkCollectionAPI () const
 Return the UsdCollectionAPI interface used for examining and modifying the light-linking of this light. More...
 
USDLUX_API UsdCollectionAPI GetShadowLinkCollectionAPI () const
 Return the UsdCollectionAPI interface used for examining and modifying the shadow-linking of this light. More...
 
Conversion to and from UsdShadeConnectableAPI
USDLUX_API UsdLuxLight (const UsdShadeConnectableAPI &connectable)
 Constructor that takes a ConnectableAPI object. More...
 
USDLUX_API UsdShadeConnectableAPI ConnectableAPI () const
 Contructs and returns a UsdShadeConnectableAPI object with this light. More...
 
Outputs API

Outputs represent a typed attribute on a light whose value is computed externally.

USDLUX_API UsdShadeOutput CreateOutput (const TfToken &name, const SdfValueTypeName &typeName)
 Create an output which can either have a value or can be connected. More...
 
USDLUX_API UsdShadeOutput GetOutput (const TfToken &name) const
 Return the requested output if it exists. More...
 
USDLUX_API std::vector
< UsdShadeOutput
GetOutputs (bool onlyAuthored=true) const
 Outputs are represented by attributes in the "outputs:" namespace. More...
 
Inputs API

Inputs are connectable attribute with a typed value.

Light parameters are encoded as inputs.

USDLUX_API UsdShadeInput CreateInput (const TfToken &name, const SdfValueTypeName &typeName)
 Create an input which can either have a value or can be connected. More...
 
USDLUX_API UsdShadeInput GetInput (const TfToken &name) const
 Return the requested input if it exists. More...
 
USDLUX_API std::vector
< UsdShadeInput
GetInputs (bool onlyAuthored=true) const
 Inputs are represented by attributes in the "inputs:" namespace. More...
 
- Public Member Functions inherited from UsdGeomXformable
 UsdGeomXformable (const UsdPrim &prim=UsdPrim())
 Construct a UsdGeomXformable on UsdPrim prim . More...
 
 UsdGeomXformable (const UsdSchemaBase &schemaObj)
 Construct a UsdGeomXformable on the prim held by schemaObj . More...
 
virtual USDGEOM_API ~UsdGeomXformable ()
 Destructor. More...
 
USDGEOM_API UsdAttribute GetXformOpOrderAttr () const
 Encodes the sequence of transformation operations in the order in which they should be pushed onto a transform stack while visiting a UsdStage's prims in a graph traversal that will effect the desired positioning for this prim and its descendant prims. More...
 
USDGEOM_API UsdAttribute CreateXformOpOrderAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetXformOpOrderAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDGEOM_API UsdGeomXformOp AddXformOp (UsdGeomXformOp::Type const opType, UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionDouble, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add an affine transformation to the local stack represented by this Xformable. More...
 
USDGEOM_API UsdGeomXformOp AddTranslateOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionDouble, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a translate operation to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddScaleOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a scale operation to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddRotateXOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a rotation about the X-axis to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddRotateYOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a rotation about the YX-axis to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddRotateZOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a rotation about the Z-axis to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddRotateXYZOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a rotation op with XYZ rotation order to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddRotateXZYOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a rotation op with XZY rotation order to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddRotateYXZOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a rotation op with YXZ rotation order to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddRotateYZXOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a rotation op with YZX rotation order to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddRotateZXYOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a rotation op with ZXY rotation order to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddRotateZYXOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a rotation op with ZYX rotation order to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddOrientOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionFloat, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a orient op (arbitrary axis/angle rotation) to the local stack represented by this xformable. More...
 
USDGEOM_API UsdGeomXformOp AddTransformOp (UsdGeomXformOp::Precision const precision=UsdGeomXformOp::PrecisionDouble, TfToken const &opSuffix=TfToken(), bool isInverseOp=false) const
 Add a tranform op (4x4 matrix transformation) to the local stack represented by this xformable. More...
 
USDGEOM_API bool SetResetXformStack (bool resetXform) const
 Specify whether this prim's transform should reset the transformation stack inherited from its parent prim. More...
 
USDGEOM_API bool GetResetXformStack () const
 Does this prim reset its parent's inherited transformation? More...
 
USDGEOM_API bool SetXformOpOrder (std::vector< UsdGeomXformOp > const &orderedXformOps, bool resetXformStack=false) const
 Reorder the already-existing transform ops on this prim. More...
 
USDGEOM_API std::vector
< UsdGeomXformOp
GetOrderedXformOps (bool *resetsXformStack) const
 Return the ordered list of transform operations to be applied to this prim, in least-to-most-local order. More...
 
USDGEOM_API bool ClearXformOpOrder () const
 Clears the local transform stack. More...
 
USDGEOM_API UsdGeomXformOp MakeMatrixXform () const
 Clears the existing local transform stack and creates a new xform op of type 'transform'. More...
 
USDGEOM_API bool TransformMightBeTimeVarying () const
 Determine whether there is any possibility that this prim's local transformation may vary over time. More...
 
USDGEOM_API bool TransformMightBeTimeVarying (const std::vector< UsdGeomXformOp > &ops) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Determine whether there is any possibility that this prim's local transformation may vary over time, using a pre-fetched (cached) list of ordered xform ops supplied by the client. More...
 
USDGEOM_API bool GetTimeSamples (std::vector< double > *times) const
 Sets times to the union of all the timesamples at which xformOps that are included in the xformOpOrder attribute are authored. More...
 
USDGEOM_API bool GetTimeSamplesInInterval (const GfInterval &interval, std::vector< double > *times) const
 Sets times to the union of all the timesamples in the interval, interval, at which xformOps that are included in the xformOpOrder attribute are authored. More...
 
USDGEOM_API bool GetLocalTransformation (GfMatrix4d *transform, bool *resetsXformStack, const UsdTimeCode time=UsdTimeCode::Default()) const
 Computes the fully-combined, local-to-parent transformation for this prim. More...
 
USDGEOM_API bool GetLocalTransformation (GfMatrix4d *transform, bool *resetsXformStack, const std::vector< UsdGeomXformOp > &ops, const UsdTimeCode time=UsdTimeCode::Default()) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Computes the fully-combined, local-to-parent transformation for this prim as efficiently as possible, using a pre-fetched (cached) list of ordered xform ops supplied by the client. More...
 
- Public Member Functions inherited from UsdGeomImageable
 UsdGeomImageable (const UsdPrim &prim=UsdPrim())
 Construct a UsdGeomImageable on UsdPrim prim . More...
 
 UsdGeomImageable (const UsdSchemaBase &schemaObj)
 Construct a UsdGeomImageable on the prim held by schemaObj . More...
 
virtual USDGEOM_API ~UsdGeomImageable ()
 Destructor. More...
 
USDGEOM_API UsdAttribute GetVisibilityAttr () const
 Visibility is meant to be the simplest form of "pruning" visibility that is supported by most DCC apps. More...
 
USDGEOM_API UsdAttribute CreateVisibilityAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetVisibilityAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDGEOM_API UsdAttribute GetPurposeAttr () const
 Purpose is a classification of geometry into categories that can each be independently included or excluded from traversals of prims on a stage, such as rendering or bounding-box computation traversals. More...
 
USDGEOM_API UsdAttribute CreatePurposeAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetPurposeAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDGEOM_API UsdRelationship GetProxyPrimRel () const
 The proxyPrim relationship allows us to link a prim whose purpose is "render" to its (single target) purpose="proxy" prim. More...
 
USDGEOM_API UsdRelationship CreateProxyPrimRel () const
 See GetProxyPrimRel(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDGEOM_API void MakeVisible (const UsdTimeCode &time=UsdTimeCode::Default()) const
 Make the imageable visible if it is invisible at the given time. More...
 
USDGEOM_API void MakeInvisible (const UsdTimeCode &time=UsdTimeCode::Default()) const
 Makes the imageable invisible if it is visible at the given time. More...
 
USDGEOM_API TfToken ComputeVisibility (UsdTimeCode const &time=UsdTimeCode::Default()) const
 Calculate the effective visibility of this prim, as defined by its most ancestral authored "invisible" opinion, if any. More...
 
USDGEOM_API TfToken ComputeVisibility (const TfToken &parentVisibility, UsdTimeCode const &time=UsdTimeCode::Default()) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Calculates the effective visibility of this prim, given the computed visibility of its parent prim at the given time. More...
 
USDGEOM_API PurposeInfo ComputePurposeInfo () const
 Calculate the effective purpose information about this prim which includes final computed purpose value of the prim as well as whether the purpose value should be inherited by namespace children without their own purpose opinions. More...
 
USDGEOM_API PurposeInfo ComputePurposeInfo (const PurposeInfo &parentPurposeInfo) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Calculates the effective purpose information about this prim, given the computed purpose information of its parent prim. More...
 
USDGEOM_API TfToken ComputePurpose () const
 Calculate the effective purpose information about this prim. More...
 
USDGEOM_API UsdPrim ComputeProxyPrim (UsdPrim *renderPrim=NULL) const
 Find the prim whose purpose is proxy that serves as the proxy for this prim, as established by the GetProxyPrimRel(), or an invalid UsdPrim if this prim has no proxy. More...
 
USDGEOM_API bool SetProxyPrim (const UsdPrim &proxy) const
 Convenience function for authoring the renderProxy rel on this prim to target the given proxy prim. More...
 
USDGEOM_API bool SetProxyPrim (const UsdSchemaBase &proxy) const
 
USDGEOM_API GfBBox3d ComputeWorldBound (UsdTimeCode const &time, TfToken const &purpose1=TfToken(), TfToken const &purpose2=TfToken(), TfToken const &purpose3=TfToken(), TfToken const &purpose4=TfToken()) const
 Compute the bound of this prim in world space, at the specified time, and for the specified purposes. More...
 
USDGEOM_API GfBBox3d ComputeLocalBound (UsdTimeCode const &time, TfToken const &purpose1=TfToken(), TfToken const &purpose2=TfToken(), TfToken const &purpose3=TfToken(), TfToken const &purpose4=TfToken()) const
 Compute the bound of this prim in local space, at the specified time, and for the specified purposes. More...
 
USDGEOM_API GfBBox3d ComputeUntransformedBound (UsdTimeCode const &time, TfToken const &purpose1=TfToken(), TfToken const &purpose2=TfToken(), TfToken const &purpose3=TfToken(), TfToken const &purpose4=TfToken()) const
 Compute the untransformed bound of this prim, at the specified time, and for the specified purposes. More...
 
USDGEOM_API GfMatrix4d ComputeLocalToWorldTransform (UsdTimeCode const &time) const
 Compute the transformation matrix for this prim at the given time, including the transform authored on the Prim itself, if present. More...
 
USDGEOM_API GfMatrix4d ComputeParentToWorldTransform (UsdTimeCode const &time) const
 Compute the transformation matrix for this prim at the given time, NOT including the transform authored on the prim itself. More...
 
USDGEOM_API UsdGeomPrimvar CreatePrimvar (const TfToken &attrName, const SdfValueTypeName &typeName, const TfToken &interpolation=TfToken(), int elementSize=-1) const
 
USDGEOM_API UsdGeomPrimvar GetPrimvar (const TfToken &name) const
 
USDGEOM_API std::vector
< UsdGeomPrimvar
GetPrimvars () const
 
USDGEOM_API std::vector
< UsdGeomPrimvar
GetAuthoredPrimvars () const
 
USDGEOM_API bool HasPrimvar (const TfToken &name) const
 
- Public Member Functions inherited from UsdTyped
 UsdTyped (const UsdPrim &prim=UsdPrim())
 Construct a UsdTyped on UsdPrim prim . More...
 
 UsdTyped (const UsdSchemaBase &schemaObj)
 Construct a UsdTyped on the prim wrapped by schemaObj . More...
 
- Public Member Functions inherited from UsdSchemaBase
bool IsConcrete () const
 Returns whether or not this class corresponds to a concrete instantiable prim type in scene description. More...
 
bool IsTyped () const
 Returns whether or not this class inherits from UsdTyped. More...
 
bool IsAPISchema () const
 Returns whether this is an API schema or not. More...
 
bool IsAppliedAPISchema () const
 Returns whether this is an applied API schema or not. More...
 
bool IsMultipleApplyAPISchema () const
 Returns whether this is an applied API schema or not. More...
 
UsdSchemaKind GetSchemaKind () const
 Returns the kind of schema this class is. More...
 
USD_API UsdSchemaBase (const UsdPrim &prim=UsdPrim())
 Construct and store prim as the held prim. More...
 
USD_API UsdSchemaBase (const UsdSchemaBase &otherSchema)
 Construct and store for the same prim held by otherSchema. More...
 
virtual USD_API ~UsdSchemaBase ()
 Destructor. More...
 
USD_API operator bool () const
 
UsdPrim GetPrim () const
 Return this schema object's held prim. More...
 
SdfPath GetPath () const
 Shorthand for GetPrim()->GetPath(). More...
 
USD_API const UsdPrimDefinitionGetSchemaClassPrimDefinition () const
 Return the prim definition associated with this schema instance if one exists, otherwise return null. More...
 

Static Public Member Functions

static USDLUX_API const
TfTokenVector
GetSchemaAttributeNames (bool includeInherited=true)
 Return a vector of names of all pre-declared attributes for this schema class and all its ancestor classes. More...
 
static USDLUX_API UsdLuxLight Get (const UsdStagePtr &stage, const SdfPath &path)
 Return a UsdLuxLight holding the prim adhering to this schema at path on stage. More...
 
- Static Public Member Functions inherited from UsdGeomXformable
static USDGEOM_API const
TfTokenVector
GetSchemaAttributeNames (bool includeInherited=true)
 Return a vector of names of all pre-declared attributes for this schema class and all its ancestor classes. More...
 
static USDGEOM_API UsdGeomXformable Get (const UsdStagePtr &stage, const SdfPath &path)
 Return a UsdGeomXformable holding the prim adhering to this schema at path on stage. More...
 
static USDGEOM_API bool GetTimeSamples (std::vector< UsdGeomXformOp > const &orderedXformOps, std::vector< double > *times)
 Returns the union of all the timesamples at which the attributes belonging to the given orderedXformOps are authored. More...
 
static USDGEOM_API bool GetTimeSamplesInInterval (std::vector< UsdGeomXformOp > const &orderedXformOps, const GfInterval &interval, std::vector< double > *times)
 Returns the union of all the timesamples in the interval at which the attributes belonging to the given orderedXformOps are authored. More...
 
static USDGEOM_API bool GetLocalTransformation (GfMatrix4d *transform, std::vector< UsdGeomXformOp > const &ops, const UsdTimeCode time)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. This is a static version of the preceding function that takes a cached list of ordered xform ops. More...
 
static USDGEOM_API bool IsTransformationAffectedByAttrNamed (const TfToken &attrName)
 Returns true if the attribute named attrName could affect the local transformation of an xformable prim. More...
 
- Static Public Member Functions inherited from UsdGeomImageable
static USDGEOM_API const
TfTokenVector
GetSchemaAttributeNames (bool includeInherited=true)
 Return a vector of names of all pre-declared attributes for this schema class and all its ancestor classes. More...
 
static USDGEOM_API UsdGeomImageable Get (const UsdStagePtr &stage, const SdfPath &path)
 Return a UsdGeomImageable holding the prim adhering to this schema at path on stage. More...
 
static USDGEOM_API const
TfTokenVector
GetOrderedPurposeTokens ()
 Returns an ordered list of allowed values of the purpose attribute. More...
 
- Static Public Member Functions inherited from UsdTyped
static const TfTokenVectorGetSchemaAttributeNames (bool includeInherited=true)
 Return a vector of names of all pre-declared attributes for this schema class and all its ancestor classes. More...
 
static USD_API UsdTyped Get (const UsdStagePtr &stage, const SdfPath &path)
 Return a UsdTyped holding the prim adhering to this schema at path on stage. More...
 
- Static Public Member Functions inherited from UsdSchemaBase
static const TfTokenVectorGetSchemaAttributeNames (bool includeInherited=true)
 

Static Public Attributes

static const UsdSchemaKind schemaKind = UsdSchemaKind::AbstractTyped
 Compile time constant representing what kind of schema this class is. More...
 
- Static Public Attributes inherited from UsdGeomXformable
static const UsdSchemaKind schemaKind = UsdSchemaKind::AbstractTyped
 Compile time constant representing what kind of schema this class is. More...
 
- Static Public Attributes inherited from UsdGeomImageable
static const UsdSchemaKind schemaKind = UsdSchemaKind::AbstractTyped
 Compile time constant representing what kind of schema this class is. More...
 
- Static Public Attributes inherited from UsdTyped
static const UsdSchemaKind schemaKind = UsdSchemaKind::AbstractBase
 Compile time constant representing what kind of schema this class is. More...
 
- Static Public Attributes inherited from UsdSchemaBase
static const UsdSchemaKind schemaKind = UsdSchemaKind::AbstractBase
 Compile time constant representing what kind of schema this class is. More...
 

Protected Member Functions

USDLUX_API UsdSchemaKind _GetSchemaKind () const override
 Returns the kind of schema this class belongs to. More...
 
- Protected Member Functions inherited from UsdTyped
USD_API bool _IsCompatible () const override
 Subclasses may override _IsCompatible to do specific compatibility checking with the given prim, such as type compatibility or value compatibility. More...
 
- Protected Member Functions inherited from UsdSchemaBase
virtual UsdSchemaKind _GetSchemaType () const
 
const TfType_GetType () const
 
USD_API UsdAttribute _CreateAttr (TfToken const &attrName, SdfValueTypeName const &typeName, bool custom, SdfVariability variability, VtValue const &defaultValue, bool writeSparsely) const
 

Friends

class UsdSchemaRegistry
 

Detailed Description

Base class for all lights.

Linking

Lights can be linked to geometry. Linking controls which geometry a light illuminates, and which geometry casts shadows from the light.

Linking is specified as collections (UsdCollectionAPI) which can be accessed via GetLightLinkCollection() and GetShadowLinkCollection(). Note that these collections have their includeRoot set to true, so that lights will illuminate and cast shadows from all objects by default. To illuminate only a specific set of objects, there are two options. One option is to modify the collection paths to explicitly exclude everything else, assuming it is known; the other option is to set includeRoot to false and explicitly include the desired objects. These are complementary approaches that may each be preferable depending on the scenario and how to best express the intent of the light setup.

Definition at line 79 of file light.h.

Constructor & Destructor Documentation

UsdLuxLight ( const UsdPrim prim = UsdPrim())
inlineexplicit

Construct a UsdLuxLight on UsdPrim prim .

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

Definition at line 91 of file light.h.

UsdLuxLight ( const UsdSchemaBase schemaObj)
inlineexplicit

Construct a UsdLuxLight on the prim held by schemaObj .

Should be preferred over UsdLuxLight(schemaObj.GetPrim()), as it preserves SchemaBase state.

Definition at line 99 of file light.h.

virtual USDLUX_API ~UsdLuxLight ( )
virtual

Destructor.

USDLUX_API UsdLuxLight ( const UsdShadeConnectableAPI connectable)

Constructor that takes a ConnectableAPI object.

Allow implicit conversion of a UsdShadeConnectableAPI to UsdLuxLight

Member Function Documentation

USDLUX_API UsdSchemaKind _GetSchemaKind ( ) const
overrideprotectedvirtual

Returns the kind of schema this class belongs to.

See Also
UsdSchemaKind

Reimplemented from UsdGeomXformable.

Reimplemented in UsdLuxPluginLight, UsdLuxLightPortal, UsdLuxRectLight, UsdLuxPortalLight, UsdLuxSphereLight, UsdRiPxrAovLight, and UsdRiPxrEnvDayLight.

USDLUX_API GfVec3f ComputeBaseEmission ( ) const

Computes the base emission (aka radiant flux density, aka energy per unit area), incorporating the parameters for intensity, exposure, color, and colorTemperature attributes.

This "base" emission method exists solely as a reference example implementation of how to interpret these parameters. It is expected that most rendering backends will consume the parameter values directly rather than call this method.

The base emission is only one step in the process of sampling light radiance. It does not incorporate effects from:

  • textural/procedural modifications
  • normalization by area
  • specular/diffuse multipliers
USDLUX_API UsdShadeConnectableAPI ConnectableAPI ( ) const

Contructs and returns a UsdShadeConnectableAPI object with this light.

Note that most tasks can be accomplished without explicitly constructing a UsdShadeConnectable API, since connection-related API such as UsdShadeConnectableAPI::ConnectToSource() are static methods, and UsdLuxLight will auto-convert to a UsdShadeConnectableAPI when passed to functions that want to act generically on a connectable UsdShadeConnectableAPI object.

USDLUX_API UsdAttribute CreateColorAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetColorAttr(), 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.

USDLUX_API UsdAttribute CreateColorTemperatureAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetColorTemperatureAttr(), 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.

USDLUX_API UsdAttribute CreateDiffuseAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetDiffuseAttr(), 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.

USDLUX_API UsdAttribute CreateEnableColorTemperatureAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetEnableColorTemperatureAttr(), 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.

USDLUX_API UsdAttribute CreateExposureAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetExposureAttr(), 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.

USDLUX_API UsdRelationship CreateFiltersRel ( ) const

See GetFiltersRel(), and also Create vs Get Property Methods for when to use Get vs Create.

USDLUX_API UsdShadeInput CreateInput ( const TfToken name,
const SdfValueTypeName typeName 
)

Create an input which can either have a value or can be connected.

The attribute representing the input is created in the "inputs:" namespace. Inputs on lights are connectable.

USDLUX_API UsdAttribute CreateIntensityAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetIntensityAttr(), 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.

USDLUX_API UsdAttribute CreateNormalizeAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetNormalizeAttr(), 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.

USDLUX_API UsdShadeOutput CreateOutput ( const TfToken name,
const SdfValueTypeName typeName 
)

Create an output which can either have a value or can be connected.

The attribute representing the output is created in the "outputs:" namespace. Outputs on a light cannot be connected, as their value is assumed to be computed externally.

USDLUX_API UsdAttribute CreateSpecularAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetSpecularAttr(), 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.

static USDLUX_API UsdLuxLight Get ( const UsdStagePtr &  stage,
const SdfPath path 
)
static

Return a UsdLuxLight holding the prim adhering to this schema at path on stage.

If no prim exists at path on stage, or if the prim at that path does not adhere to this schema, return an invalid schema object. This is shorthand for the following:

* UsdLuxLight(stage->GetPrimAtPath(path));
*
USDLUX_API UsdAttribute GetColorAttr ( ) const

The color of emitted light, in energy-linear terms.

Declaration color3f inputs:color = (1, 1, 1)
C++ Type GfVec3f
Usd Type SdfValueTypeNames->Color3f
USDLUX_API UsdAttribute GetColorTemperatureAttr ( ) const

Color temperature, in degrees Kelvin, representing the white point.

The default is a common white point, D65. Lower values are warmer and higher values are cooler. The valid range is from 1000 to 10000. Only takes effect when enableColorTemperature is set to true. When active, the computed result multiplies against the color attribute. See UsdLuxBlackbodyTemperatureAsRgb().

Declaration float inputs:colorTemperature = 6500
C++ Type float
Usd Type SdfValueTypeNames->Float
USDLUX_API UsdAttribute GetDiffuseAttr ( ) const

A multiplier for the effect of this light on the diffuse response of materials.

This is a non-physical control.

Declaration float inputs:diffuse = 1
C++ Type float
Usd Type SdfValueTypeNames->Float
USDLUX_API UsdAttribute GetEnableColorTemperatureAttr ( ) const

Enables using colorTemperature.

Declaration bool inputs:enableColorTemperature = 0
C++ Type bool
Usd Type SdfValueTypeNames->Bool
USDLUX_API UsdAttribute GetExposureAttr ( ) const

Scales the power of the light exponentially as a power of 2 (similar to an F-stop control over exposure).

The result is multiplied against the intensity.

Declaration float inputs:exposure = 0
C++ Type float
Usd Type SdfValueTypeNames->Float
USDLUX_API UsdRelationship GetFiltersRel ( ) const

Relationship to the light filters that apply to this light.

USDLUX_API UsdShadeInput GetInput ( const TfToken name) const

Return the requested input if it exists.

USDLUX_API std::vector<UsdShadeInput> GetInputs ( bool  onlyAuthored = true) const

Inputs are represented by attributes in the "inputs:" namespace.

If onlyAuthored is true (the default), then only return authored attributes; otherwise, this also returns un-authored builtins.

USDLUX_API UsdAttribute GetIntensityAttr ( ) const

Scales the power of the light linearly.

Declaration float inputs:intensity = 1
C++ Type float
Usd Type SdfValueTypeNames->Float
USDLUX_API UsdCollectionAPI GetLightLinkCollectionAPI ( ) const

Return the UsdCollectionAPI interface used for examining and modifying the light-linking of this light.

Light-linking controls which geometry this light illuminates.

USDLUX_API UsdAttribute GetNormalizeAttr ( ) const

Normalizes power by the surface area of the light.

This makes it easier to independently adjust the power and shape of the light, by causing the power to not vary with the area or angular size of the light.

Declaration bool inputs:normalize = 0
C++ Type bool
Usd Type SdfValueTypeNames->Bool
USDLUX_API UsdShadeOutput GetOutput ( const TfToken name) const

Return the requested output if it exists.

USDLUX_API std::vector<UsdShadeOutput> GetOutputs ( bool  onlyAuthored = true) const

Outputs are represented by attributes in the "outputs:" namespace.

If onlyAuthored is true (the default), then only return authored attributes; otherwise, this also returns un-authored builtins.

static USDLUX_API const TfTokenVector& GetSchemaAttributeNames ( bool  includeInherited = true)
static

Return a vector of names of all pre-declared attributes for this schema class and all its ancestor classes.

Does not include attributes that may be authored by custom/extended methods of the schemas involved.

USDLUX_API UsdCollectionAPI GetShadowLinkCollectionAPI ( ) const

Return the UsdCollectionAPI interface used for examining and modifying the shadow-linking of this light.

Shadow-linking controls which geometry casts shadows from this light.

USDLUX_API UsdAttribute GetSpecularAttr ( ) const

A multiplier for the effect of this light on the specular response of materials.

This is a non-physical control.

Declaration float inputs:specular = 1
C++ Type float
Usd Type SdfValueTypeNames->Float

Member Data Documentation

const UsdSchemaKind schemaKind = UsdSchemaKind::AbstractTyped
static

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

See Also
UsdSchemaKind

Definition at line 85 of file light.h.


The documentation for this class was generated from the following file: