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

RiLightAPI is an API schema that provides an interface to add Renderman-specific attributes to lights. More...

+ Inheritance diagram for UsdRiLightAPI:

Public Member Functions

 UsdRiLightAPI (const UsdPrim &prim=UsdPrim())
 Construct a UsdRiLightAPI on UsdPrim prim . More...
 
 UsdRiLightAPI (const UsdSchemaBase &schemaObj)
 Construct a UsdRiLightAPI on the prim held by schemaObj . More...
 
virtual USDRI_API ~UsdRiLightAPI ()
 Destructor. More...
 
USDRI_API UsdAttribute GetRiSamplingFixedSampleCountAttr () const
 Specifies an override of the number of light samples to be taken for this light source. More...
 
USDRI_API UsdAttribute CreateRiSamplingFixedSampleCountAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetRiSamplingFixedSampleCountAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDRI_API UsdAttribute GetRiSamplingImportanceMultiplierAttr () const
 Importance of this light for noise control. More...
 
USDRI_API UsdAttribute CreateRiSamplingImportanceMultiplierAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetRiSamplingImportanceMultiplierAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDRI_API UsdAttribute GetRiIntensityNearDistAttr () const
 Near distance between the point being illuminated and the light at which the sample doesn't get brighter. More...
 
USDRI_API UsdAttribute CreateRiIntensityNearDistAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetRiIntensityNearDistAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDRI_API UsdAttribute GetRiLightGroupAttr () const
 Specify the light group name used for light group LPEs. More...
 
USDRI_API UsdAttribute CreateRiLightGroupAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetRiLightGroupAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDRI_API UsdAttribute GetRiShadowThinShadowAttr () const
 Enable thin shadow and disable refraction caustics for this light. More...
 
USDRI_API UsdAttribute CreateRiShadowThinShadowAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetRiShadowThinShadowAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
USDRI_API UsdAttribute GetRiTraceLightPathsAttr () const
 Enable light and photon tracing from this light. More...
 
USDRI_API UsdAttribute CreateRiTraceLightPathsAttr (VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
 See GetRiTraceLightPathsAttr(), and also Create vs Get Property Methods for when to use Get vs Create. More...
 
- Public Member Functions inherited from UsdAPISchemaBase
 UsdAPISchemaBase (const UsdPrim &prim=UsdPrim())
 Construct a UsdAPISchemaBase on UsdPrim prim . More...
 
 UsdAPISchemaBase (const UsdSchemaBase &schemaObj)
 Construct a UsdAPISchemaBase on the prim held by schemaObj . More...
 
virtual USD_API ~UsdAPISchemaBase ()=0
 Destructor. 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...
 
UsdSchemaType GetSchemaType () const
 
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
 Return true if this schema object is compatible with its held prim, false otherwise. More...
 
UsdPrim GetPrim () const
 Return this schema object's held prim. More...
 
SdfPath GetPath () const
 Shorthand for GetPrim()->GetPath(). More...
 
USD_API SdfPrimSpecHandle GetSchemaClassPrimDefinition () const
 Return the prim definition associated with this schema instance if one exists, otherwise return null. More...
 

Static Public Member Functions

static USDRI_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 USDRI_API UsdRiLightAPI Get (const UsdStagePtr &stage, const SdfPath &path)
 Return a UsdRiLightAPI holding the prim adhering to this schema at path on stage. More...
 
static USDRI_API UsdRiLightAPI Apply (const UsdPrim &prim)
 Applies this single-apply API schema to the given prim. More...
 
- Static Public Member Functions inherited from UsdAPISchemaBase
static USD_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 Public Member Functions inherited from UsdSchemaBase
static const TfTokenVectorGetSchemaAttributeNames (bool includeInherited=true)
 

Static Public Attributes

static const UsdSchemaType schemaType = UsdSchemaType::SingleApplyAPI
 Compile time constant representing what kind of schema this class is. More...
 
- Static Public Attributes inherited from UsdAPISchemaBase
static const UsdSchemaType schemaType = UsdSchemaType::AbstractBase
 Compile time constant representing what kind of schema this class is. More...
 
- Static Public Attributes inherited from UsdSchemaBase
static const UsdSchemaType schemaType = UsdSchemaType::AbstractBase
 Compile time constant representing what kind of schema this class is. More...
 

Protected Member Functions

USDRI_API UsdSchemaType _GetSchemaType () const override
 Returns the type of schema this class belongs to. More...
 
- Protected Member Functions inherited from UsdAPISchemaBase
 UsdAPISchemaBase (const UsdPrim &prim, const TfToken &instanceName)
 Construct a multiple-apply UsdAPISchemaBase on UsdPrim prim with the specified instanceName. More...
 
 UsdAPISchemaBase (const UsdSchemaBase &schemaObj, const TfToken &instanceName)
 Construct a multiple-apply UsdAPISchemaBase on the prim held by schemaObj with the given instanceName. More...
 
const TfToken_GetInstanceName () const
 Returns the instance name of the API schema object belonging to a multiple-apply API schema. More...
 
USD_API bool _IsCompatible () const override
 Check whether this APISchema object is valid for the currently held prim. More...
 
- Protected Member Functions inherited from UsdSchemaBase
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
 

Additional Inherited Members

- Static Protected Member Functions inherited from UsdAPISchemaBase
template<typename APISchemaType >
static APISchemaType _ApplyAPISchema (const UsdPrim &prim, const TfToken &apiSchemaName)
 Helper method to apply a single-apply API schema with the given schema name apiSchemaName' and C++ type 'APISchemaType'. More...
 
template<typename APISchemaType >
static APISchemaType _MultipleApplyAPISchema (const UsdPrim &prim, const TfToken &apiSchemaName, const TfToken &instanceName)
 Helper method to apply a multiple-apply API schema with the given schema name apiSchemaName', C++ type 'APISchemaType' and instance name instanceName. More...
 

Detailed Description

RiLightAPI is an API schema that provides an interface to add Renderman-specific attributes to lights.

Definition at line 58 of file lightAPI.h.

Constructor & Destructor Documentation

UsdRiLightAPI ( const UsdPrim prim = UsdPrim())
inlineexplicit

Construct a UsdRiLightAPI on UsdPrim prim .

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

Definition at line 70 of file lightAPI.h.

UsdRiLightAPI ( const UsdSchemaBase schemaObj)
inlineexplicit

Construct a UsdRiLightAPI on the prim held by schemaObj .

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

Definition at line 78 of file lightAPI.h.

virtual USDRI_API ~UsdRiLightAPI ( )
virtual

Destructor.

Member Function Documentation

USDRI_API UsdSchemaType _GetSchemaType ( ) const
overrideprotectedvirtual

Returns the type of schema this class belongs to.

See Also
UsdSchemaType

Reimplemented from UsdAPISchemaBase.

static USDRI_API UsdRiLightAPI Apply ( const UsdPrim prim)
static

Applies this single-apply API schema to the given prim.

This information is stored by adding "RiLightAPI" to the token-valued, listOp metadata apiSchemas on the prim.

Returns
A valid UsdRiLightAPI object is returned upon success. An invalid (or empty) UsdRiLightAPI object is returned upon failure. See UsdAPISchemaBase::_ApplyAPISchema() for conditions resulting in failure.
See Also
UsdPrim::GetAppliedSchemas()
UsdPrim::HasAPI()
USDRI_API UsdAttribute CreateRiIntensityNearDistAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

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

USDRI_API UsdAttribute CreateRiLightGroupAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

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

USDRI_API UsdAttribute CreateRiSamplingFixedSampleCountAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

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

USDRI_API UsdAttribute CreateRiSamplingImportanceMultiplierAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

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

USDRI_API UsdAttribute CreateRiShadowThinShadowAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

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

USDRI_API UsdAttribute CreateRiTraceLightPathsAttr ( VtValue const &  defaultValue = VtValue(),
bool  writeSparsely = false 
) const

See GetRiTraceLightPathsAttr(), 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 USDRI_API UsdRiLightAPI Get ( const UsdStagePtr &  stage,
const SdfPath path 
)
static

Return a UsdRiLightAPI 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:

* UsdRiLightAPI(stage->GetPrimAtPath(path));
*
USDRI_API UsdAttribute GetRiIntensityNearDistAttr ( ) const

Near distance between the point being illuminated and the light at which the sample doesn't get brighter.

This may help you avoid hot spots and sampling issues where a light is near a surface.

Declaration float ri:intensityNearDist
C++ Type float
Usd Type SdfValueTypeNames->Float
USDRI_API UsdAttribute GetRiLightGroupAttr ( ) const

Specify the light group name used for light group LPEs.

This is useful to generate per-light AOVs for later adjustment in compositing.

Declaration string ri:lightGroup
C++ Type std::string
Usd Type SdfValueTypeNames->String
USDRI_API UsdAttribute GetRiSamplingFixedSampleCountAttr ( ) const

Specifies an override of the number of light samples to be taken for this light source.

If set to something other than zero, it will override the sampling performed by the integrator and can result in a performance impact. For scenes that have lots of lights, resulting in some lights that are under-sampled, you may want to set it to non-zero.

Declaration int ri:sampling:fixedSampleCount
C++ Type int
Usd Type SdfValueTypeNames->Int
USDRI_API UsdAttribute GetRiSamplingImportanceMultiplierAttr ( ) const

Importance of this light for noise control.

Declaration float ri:sampling:importanceMultiplier = 1
C++ Type float
Usd Type SdfValueTypeNames->Float
USDRI_API UsdAttribute GetRiShadowThinShadowAttr ( ) const

Enable thin shadow and disable refraction caustics for this light.

This parameter will ignored if Trace Light Paths is enabled. This is a non-physical control that creates "fake" colored shadows for transmissive objects without needing to generate photons for caustics.

Declaration bool ri:shadow:thinShadow
C++ Type bool
Usd Type SdfValueTypeNames->Bool
USDRI_API UsdAttribute GetRiTraceLightPathsAttr ( ) const

Enable light and photon tracing from this light.

This value enforces a physically-based light and as a side-effect disables the above Shadows controls. Users may use this feature to selectively decide which lights emit photons when using the PxrVCM or PxrUPBP Integrators.

Declaration bool ri:trace:lightPaths
C++ Type bool
Usd Type SdfValueTypeNames->Bool
static USDRI_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.

Member Data Documentation

const UsdSchemaType schemaType = UsdSchemaType::SingleApplyAPI
static

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

See Also
UsdSchemaType

Definition at line 64 of file lightAPI.h.


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