![]() |
|
Delegate support for UsdGeomMesh. More...
#include <meshAdapter.h>
Public Types | |
using | BaseAdapter = UsdImagingGprimAdapter |
![]() | |
using | BaseAdapter = UsdImagingPrimAdapter |
![]() | |
enum | PopulationMode { RepresentsSelf , RepresentsSelfAndDescendents , RepresentedByAncestor } |
Public Member Functions | |
Scene Index Support | |
USDIMAGING_API TfTokenVector | GetImagingSubprims (UsdPrim const &prim) override |
USDIMAGING_API TfToken | GetImagingSubprimType (UsdPrim const &prim, TfToken const &subprim) override |
USDIMAGING_API HdContainerDataSourceHandle | GetImagingSubprimData (UsdPrim const &prim, TfToken const &subprim, const UsdImagingDataSourceStageGlobals &stageGlobals) override |
USDIMAGING_API HdDataSourceLocatorSet | InvalidateImagingSubprim (UsdPrim const &prim, TfToken const &subprim, TfTokenVector const &properties, UsdImagingPropertyInvalidationType invalidationType) override |
Initialization | |
USDIMAGING_API SdfPath | Populate (UsdPrim const &prim, UsdImagingIndexProxy *index, UsdImagingInstancerContext const *instancerContext=nullptr) override |
Called to populate the RenderIndex for this UsdPrim. | |
USDIMAGING_API bool | IsSupported (UsdImagingIndexProxy const *index) const override |
Returns true if the adapter can be populated into the target index. | |
Parallel Setup and Resolve | |
USDIMAGING_API void | TrackVariability (UsdPrim const &prim, SdfPath const &cachePath, HdDirtyBits *timeVaryingBits, UsdImagingInstancerContext const *instancerContext=nullptr) const override |
Thread Safe. | |
USDIMAGING_API void | UpdateForTime (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time, HdDirtyBits requestedBits, UsdImagingInstancerContext const *instancerContext=nullptr) const override |
Thread Safe. | |
Change Processing | |
USDIMAGING_API HdDirtyBits | ProcessPropertyChange (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &propertyName) override |
Returns a bit mask of attributes to be updated, or HdChangeTracker::AllDirty if the entire prim must be resynchronized. | |
![]() | |
virtual USDIMAGING_API void | MarkDirty (UsdPrim const &prim, SdfPath const &cachePath, HdDirtyBits dirty, UsdImagingIndexProxy *index) override |
virtual USDIMAGING_API void | MarkRefineLevelDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override |
virtual USDIMAGING_API void | MarkReprDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override |
virtual USDIMAGING_API void | MarkCullStyleDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override |
virtual USDIMAGING_API void | MarkRenderTagDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override |
virtual USDIMAGING_API void | MarkTransformDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override |
virtual USDIMAGING_API void | MarkVisibilityDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override |
virtual USDIMAGING_API void | MarkMaterialDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override |
virtual USDIMAGING_API void | MarkCollectionsDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override |
virtual USDIMAGING_API VtValue | GetPoints (UsdPrim const &prim, UsdTimeCode time) const |
Give derived classes an opportunity to override how we get points for a prim. | |
USDIMAGING_API SdfPath | _AddRprim (TfToken const &primType, UsdPrim const &usdPrim, UsdImagingIndexProxy *index, SdfPath const &materialUsdPath, UsdImagingInstancerContext const *instancerContext) |
USDIMAGING_API GfRange3d | GetExtent (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override |
Reads the extent from the given prim. | |
USDIMAGING_API bool | GetDoubleSided (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override |
Reads double-sided from the given prim. If not authored, returns false. | |
USDIMAGING_API SdfPath | GetMaterialId (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override |
![]() | |
virtual USDIMAGING_API HdDirtyBits | ProcessPrimChange (UsdPrim const &prim, SdfPath const &cachePath, TfTokenVector const &changedFields) |
Returns a bit mask of attributes to be updated, or HdChangeTracker::AllDirty if the entire prim must be resynchronized. | |
virtual USDIMAGING_API void | ProcessPrimResync (SdfPath const &cachePath, UsdImagingIndexProxy *index) |
When a PrimResync event occurs, the prim may have been deleted entirely, adapter plug-ins should override this method to free any per-prim state that was accumulated in the adapter. | |
virtual USDIMAGING_API void | ProcessPrimRemoval (SdfPath const &cachePath, UsdImagingIndexProxy *index) |
Removes all associated Rprims and dependencies from the render index without scheduling them for repopulation. | |
virtual USDIMAGING_API void | MarkLightParamsDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkWindowPolicyDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | InvokeComputation (SdfPath const &cachePath, HdExtComputationContext *context) |
virtual USDIMAGING_API std::vector< VtArray< TfToken > > | GetInstanceCategories (UsdPrim const &prim) |
Return an array of the categories used by each instance. | |
virtual USDIMAGING_API GfMatrix4d | GetInstancerTransform (UsdPrim const &instancerPrim, SdfPath const &instancerPath, UsdTimeCode time) const |
Get the instancer transform for the given prim. | |
virtual USDIMAGING_API size_t | SampleInstancerTransform (UsdPrim const &instancerPrim, SdfPath const &instancerPath, UsdTimeCode time, size_t maxNumSamples, float *sampleTimes, GfMatrix4d *sampleValues) |
Sample the instancer transform for the given prim. | |
virtual USDIMAGING_API SdfPath | GetInstancerId (UsdPrim const &usdPrim, SdfPath const &cachePath) const |
Return the instancerId for this prim. | |
virtual USDIMAGING_API SdfPathVector | GetInstancerPrototypes (UsdPrim const &usdPrim, SdfPath const &cachePath) const |
Return the list of known prototypes of this prim. | |
virtual USDIMAGING_API size_t | SamplePrimvar (UsdPrim const &usdPrim, SdfPath const &cachePath, TfToken const &key, UsdTimeCode time, size_t maxNumSamples, float *sampleTimes, VtValue *sampleValues, VtIntArray *sampleIndices) |
Sample the primvar for the given prim. | |
virtual USDIMAGING_API GfMatrix4d | GetRelativeInstancerTransform (SdfPath const &instancerPath, SdfPath const &protoInstancerPath, UsdTimeCode time) const |
Returns the transform of protoInstancerPath relative to instancerPath . | |
virtual USDIMAGING_API SdfPath | GetScenePrimPath (SdfPath const &cachePath, int instanceIndex, HdInstancerContext *instancerCtx) const |
virtual USDIMAGING_API SdfPathVector | GetScenePrimPaths (SdfPath const &cachePath, std::vector< int > const &instanceIndices, std::vector< HdInstancerContext > *instancerCtxs) const |
virtual USDIMAGING_API bool | PopulateSelection (HdSelection::HighlightMode const &highlightMode, SdfPath const &cachePath, UsdPrim const &usdPrim, int const hydraInstanceIndex, VtIntArray const &parentInstanceIndices, HdSelectionSharedPtr const &result) const |
virtual USDIMAGING_API HdVolumeFieldDescriptorVector | GetVolumeFieldDescriptors (UsdPrim const &usdPrim, SdfPath const &id, UsdTimeCode time) const |
virtual USDIMAGING_API VtValue | GetLightParamValue (const UsdPrim &prim, const SdfPath &cachePath, const TfToken ¶mName, UsdTimeCode time) const |
USDIMAGING_API GfMatrix4d | GetRootTransform () const |
The root transform provided by the delegate. | |
USDIMAGING_API void | SetDelegate (UsdImagingDelegate *delegate) |
A thread-local XformCache provided by the delegate. | |
USDIMAGING_API bool | IsChildPath (SdfPath const &path) const |
virtual USDIMAGING_API bool | GetVisible (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const |
Returns true if the given prim is visible, taking into account inherited visibility values. | |
virtual USDIMAGING_API TfToken | GetPurpose (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &instanceInheritablePurpose) const |
Returns the purpose token for prim . | |
USDIMAGING_API TfToken | GetInheritablePurpose (UsdPrim const &prim) const |
Returns the purpose token for prim , but only if it is inheritable by child prims (i.e. | |
virtual USDIMAGING_API GfMatrix4d | GetTransform (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time, bool ignoreRootTransform=false) const |
Fetches the transform for the given prim at the given time from a pre-computed cache of prim transforms. | |
virtual USDIMAGING_API size_t | SampleTransform (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time, size_t maxNumSamples, float *sampleTimes, GfMatrix4d *sampleValues) |
Samples the transform for the given prim. | |
virtual USDIMAGING_API HdCullStyle | GetCullStyle (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const |
Gets the cullstyle of a specific path in the scene graph. | |
USDIMAGING_API SdfPath | GetMaterialUsdPath (UsdPrim const &prim) const |
Gets the material path for the given prim, walking up namespace if necessary. | |
USDIMAGING_API TfToken | GetModelDrawMode (UsdPrim const &prim) |
Gets the model:drawMode attribute for the given prim, walking up the namespace if necessary. | |
USDIMAGING_API HdModelDrawMode | GetFullModelDrawMode (UsdPrim const &prim) |
Gets the model draw mode object for the given prim, walking up the namespace if necessary. | |
USDIMAGING_API VtArray< VtIntArray > | GetPerPrototypeIndices (UsdPrim const &prim, UsdTimeCode time) const |
Computes the per-prototype instance indices for a UsdGeomPointInstancer. | |
virtual USDIMAGING_API VtValue | GetMaterialResource (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const |
virtual USDIMAGING_API const TfTokenVector & | GetExtComputationSceneInputNames (SdfPath const &cachePath) const |
virtual USDIMAGING_API HdExtComputationInputDescriptorVector | GetExtComputationInputs (UsdPrim const &prim, SdfPath const &cachePath, const UsdImagingInstancerContext *instancerContext) const |
virtual USDIMAGING_API HdExtComputationOutputDescriptorVector | GetExtComputationOutputs (UsdPrim const &prim, SdfPath const &cachePath, const UsdImagingInstancerContext *instancerContext) const |
virtual USDIMAGING_API HdExtComputationPrimvarDescriptorVector | GetExtComputationPrimvars (UsdPrim const &prim, SdfPath const &cachePath, HdInterpolation interpolation, const UsdImagingInstancerContext *instancerContext) const |
virtual USDIMAGING_API VtValue | GetExtComputationInput (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &name, UsdTimeCode time, const UsdImagingInstancerContext *instancerContext) const |
virtual USDIMAGING_API size_t | SampleExtComputationInput (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &name, UsdTimeCode time, const UsdImagingInstancerContext *instancerContext, size_t maxSampleCount, float *sampleTimes, VtValue *sampleValues) |
virtual USDIMAGING_API std::string | GetExtComputationKernel (UsdPrim const &prim, SdfPath const &cachePath, const UsdImagingInstancerContext *instancerContext) const |
virtual USDIMAGING_API VtValue | GetInstanceIndices (UsdPrim const &instancerPrim, SdfPath const &instancerCachePath, SdfPath const &prototypeCachePath, UsdTimeCode time) const |
virtual USDIMAGING_API PopulationMode | GetPopulationMode () |
Returns the prim's behavior with regard to population and invalidation. | |
virtual USDIMAGING_API HdDataSourceLocatorSet | InvalidateImagingSubprimFromDescendent (UsdPrim const &prim, UsdPrim const &descendentPrim, TfToken const &subprim, TfTokenVector const &properties, UsdImagingPropertyInvalidationType invalidationType) |
This is called (for each result of GetImagingSubprims) when this adapter's GetScope() result is RepresentsSelfAndDescendents and USD properties have changed on a descendent prim whose adapter's GetScope() result is RepresentedByAncestor. | |
virtual USDIMAGING_API bool | ShouldCullChildren () const |
virtual USDIMAGING_API bool | ShouldIgnoreNativeInstanceSubtrees () const |
virtual USDIMAGING_API bool | IsInstancerAdapter () const |
virtual USDIMAGING_API bool | CanPopulateUsdInstance () const |
Data access | |
USDIMAGING_API PxOsdSubdivTags | GetSubdivTags (UsdPrim const &usdPrim, SdfPath const &cachePath, UsdTimeCode time) const override |
Get the subdiv tags for this prim. | |
USDIMAGING_API VtValue | GetTopology (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override |
Gets the topology object of a specific Usd prim. | |
USDIMAGING_API VtValue | Get (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &key, UsdTimeCode time, VtIntArray *outIndices) const override |
Gets the value of the parameter named key for the given prim (which has the given cache path) and given time. | |
USDIMAGING_API bool | _IsBuiltinPrimvar (TfToken const &primvarName) const override |
Additional Inherited Members | |
![]() | |
static USDIMAGING_API bool | GetColor (UsdPrim const &prim, UsdTimeCode time, TfToken *interpolation, VtValue *color, VtIntArray *indices) |
Returns color, Usd interpolation token, and optionally color indices for a given prim, taking into account surface shader colors and explicitly authored color on the prim. | |
static USDIMAGING_API bool | GetOpacity (UsdPrim const &prim, UsdTimeCode time, TfToken *interpolation, VtValue *opacity, VtIntArray *indices) |
Returns opacity, Usd interpolation token, and optionally opacity indices for a given prim, taking into account surface shader opacity and explicitly authored opacity on the prim. | |
static USDIMAGING_API SdfPath | _ResolveCachePath (SdfPath const &usdPath, UsdImagingInstancerContext const *instancerContext) |
static USDIMAGING_API GfMatrix4d | GetImplicitBasis (TfToken const &spineAxis) |
![]() | |
static USDIMAGING_API UsdAttribute | LookupLightParamAttribute (UsdPrim const &prim, TfToken const ¶mName) |
Provides to paramName->UsdAttribute value mappings. | |
static USDIMAGING_API bool | ShouldCullSubtree (UsdPrim const &prim) |
![]() | |
using | Keys = UsdImagingPrimvarDescCache::Key |
![]() | |
virtual USDIMAGING_API void | _RemovePrim (SdfPath const &cachePath, UsdImagingIndexProxy *index) override |
virtual USDIMAGING_API TfTokenVector | _CollectMaterialPrimvars (SdfPathVector const &materialUsdPaths, UsdTimeCode time) const |
virtual USDIMAGING_API TfTokenVector const & | _GetRprimPrimvarNames () const |
Returns the primvar names known to be supported for the rprims this adapter produces. | |
![]() | |
template<typename T > | |
T | _Get (UsdPrim const &prim, TfToken const &attrToken, UsdTimeCode time) const |
template<typename T > | |
void | _GetPtr (UsdPrim const &prim, TfToken const &key, UsdTimeCode time, T *out) const |
USDIMAGING_API UsdImagingPrimvarDescCache * | _GetPrimvarDescCache () const |
UsdImaging_NonlinearSampleCountCache * | _GetNonlinearSampleCountCache () const |
UsdImaging_BlurScaleCache * | _GetBlurScaleCache () const |
USDIMAGING_API UsdPrim | _GetPrim (SdfPath const &usdPath) const |
USDIMAGING_API const UsdImagingPrimAdapterSharedPtr & | _GetPrimAdapter (UsdPrim const &prim, bool ignoreInstancing=false) const |
USDIMAGING_API const UsdImagingPrimAdapterSharedPtr & | _GetAdapter (TfToken const &adapterKey) const |
USDIMAGING_API SdfPath | _GetPrimPathFromInstancerChain (SdfPathVector const &instancerChain) const |
USDIMAGING_API UsdTimeCode | _GetTimeWithOffset (float offset) const |
USDIMAGING_API SdfPath | _ConvertCachePathToIndexPath (SdfPath const &cachePath) const |
USDIMAGING_API SdfPath | _ConvertIndexPathToCachePath (SdfPath const &indexPath) const |
USDIMAGING_API TfToken | _GetMaterialBindingPurpose () const |
USDIMAGING_API TfTokenVector | _GetMaterialRenderContexts () const |
USDIMAGING_API TfTokenVector | _GetRenderSettingsNamespaces () const |
USDIMAGING_API bool | _GetSceneMaterialsEnabled () const |
Returns whether custom shading of prims is enabled. | |
USDIMAGING_API bool | _GetSceneLightsEnabled () const |
Returns whether lights found in the usdscene are enabled. | |
USDIMAGING_API bool | _IsPrimvarFilteringNeeded () const |
USDIMAGING_API TfTokenVector | _GetShaderSourceTypes () const |
USDIMAGING_API bool | _IsInInvisedPaths (SdfPath const &usdPath) const |
USDIMAGING_API bool | _IsVarying (UsdPrim prim, TfToken const &attrName, HdDirtyBits dirtyFlag, TfToken const &perfToken, HdDirtyBits *dirtyFlags, bool isInherited, bool *exists=nullptr) const |
USDIMAGING_API bool | _IsTransformVarying (UsdPrim prim, HdDirtyBits dirtyFlag, TfToken const &perfToken, HdDirtyBits *dirtyFlags) const |
USDIMAGING_API void | _MergePrimvar (HdPrimvarDescriptorVector *vec, TfToken const &name, HdInterpolation interp, TfToken const &role=TfToken(), bool indexed=false) const |
USDIMAGING_API void | _RemovePrimvar (HdPrimvarDescriptorVector *vec, TfToken const &name) const |
USDIMAGING_API void | _ComputeAndMergePrimvar (UsdPrim const &prim, UsdGeomPrimvar const &primvar, UsdTimeCode time, HdPrimvarDescriptorVector *primvarDescs, HdInterpolation *interpOverride=nullptr) const |
USDIMAGING_API HdDirtyBits | _ProcessNonPrefixedPrimvarPropertyChange (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &propertyName, TfToken const &primvarName, HdInterpolation const &primvarInterp, HdDirtyBits valueChangeDirtyBit=HdChangeTracker::DirtyPrimvar) const |
USDIMAGING_API HdDirtyBits | _ProcessPrefixedPrimvarPropertyChange (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &propertyName, HdDirtyBits valueChangeDirtyBit=HdChangeTracker::DirtyPrimvar, bool inherited=true) const |
USDIMAGING_API void | _ResyncDependents (SdfPath const &usdPath, UsdImagingIndexProxy *index) |
USDIMAGING_API UsdImaging_CollectionCache & | _GetCollectionCache () const |
USDIMAGING_API UsdStageRefPtr | _GetStage () const |
USDIMAGING_API UsdImaging_CoordSysBindingStrategy::value_type | _GetCoordSysBindings (UsdPrim const &prim) const |
USDIMAGING_API UsdImaging_InheritedPrimvarStrategy::value_type | _GetInheritedPrimvars (UsdPrim const &prim) const |
USDIMAGING_API UsdGeomPrimvar | _GetInheritedPrimvar (UsdPrim const &prim, TfToken const &primvarName) const |
USDIMAGING_API GfInterval | _GetCurrentTimeSamplingInterval () |
USDIMAGING_API Usd_PrimFlagsConjunction | _GetDisplayPredicate () const |
USDIMAGING_API Usd_PrimFlagsConjunction | _GetDisplayPredicateForPrototypes () const |
USDIMAGING_API bool | _DoesDelegateSupportCoordSys () const |
![]() | |
static USDIMAGING_API bool | _HasPrimvarsPrefix (TfToken const &propertyName) |
Delegate support for UsdGeomMesh.
Definition at line 44 of file meshAdapter.h.
using BaseAdapter = UsdImagingGprimAdapter |
Definition at line 47 of file meshAdapter.h.
|
inline |
Definition at line 49 of file meshAdapter.h.
|
overrideprotectedvirtual |
Reimplemented from UsdImagingGprimAdapter.
|
overridevirtual |
Gets the value of the parameter named key for the given prim (which has the given cache path) and given time.
If outIndices is not nullptr and the value has indices, it will return the unflattened value and set outIndices to the value's associated indices.
Reimplemented from UsdImagingGprimAdapter.
|
overridevirtual |
Reimplemented from UsdImagingPrimAdapter.
|
overridevirtual |
Reimplemented from UsdImagingPrimAdapter.
|
overridevirtual |
Reimplemented from UsdImagingPrimAdapter.
|
overridevirtual |
Get the subdiv tags for this prim.
Reimplemented from UsdImagingPrimAdapter.
|
overridevirtual |
Gets the topology object of a specific Usd prim.
If the adapter is a mesh it will return an HdMeshTopology, if it is of type basis curves, it will return an HdBasisCurvesTopology. If the adapter does not have a topology, it returns an empty VtValue.
Reimplemented from UsdImagingPrimAdapter.
|
overridevirtual |
Reimplemented from UsdImagingGprimAdapter.
|
overridevirtual |
Returns true if the adapter can be populated into the target index.
Reimplemented from UsdImagingPrimAdapter.
|
overridevirtual |
Called to populate the RenderIndex for this UsdPrim.
The adapter is expected to create one or more prims in the render index using the given proxy.
Implements UsdImagingPrimAdapter.
|
overridevirtual |
Returns a bit mask of attributes to be updated, or HdChangeTracker::AllDirty if the entire prim must be resynchronized.
Reimplemented from UsdImagingGprimAdapter.
|
overridevirtual |
Thread Safe.
Reimplemented from UsdImagingGprimAdapter.
|
overridevirtual |
Thread Safe.
Reimplemented from UsdImagingGprimAdapter.