HDK
|
#include <dataSourceResolvedPointsBasedPrim.h>
Static Public Member Functions | |
static USDSKELIMAGING_API Handle | New (HdSceneIndexBaseRefPtr const &sceneIndex, SdfPath primPath, HdContainerDataSourceHandle primSource) |
static USDSKELIMAGING_API const HdDataSourceLocatorSet & | GetDependendendOnDataSourceLocators () |
![]() | |
static HD_API HdDataSourceBaseHandle | Get (const Handle &container, const HdDataSourceLocator &locator) |
A prim data source providing resolved data for a points based prim (mesh, basisCurves, points) deformed by a skeleton. As a data source, it populates the HdExtComputationPrimvarsSchema for points and removes points from the HdPrimvarsSchema.
Used by the UsdSkelImagingPointsResolvingSceneIndex in conjunction with the UsdSkelImagingDataSourceResolvedExtComputationPrim.
Definition at line 36 of file dataSourceResolvedPointsBasedPrim.h.
USDSKELIMAGING_API UsdSkelImagingDataSourceResolvedPointsBasedPrim::~UsdSkelImagingDataSourceResolvedPointsBasedPrim | ( | ) |
|
overridevirtual |
Returns the child datasource of the given name. This call is expected to be threadsafe.
Implements HdContainerDataSource.
USDSKELIMAGING_API std::shared_ptr<UsdSkelImagingBlendShapeData> UsdSkelImagingDataSourceResolvedPointsBasedPrim::GetBlendShapeData | ( | ) |
Blend shape data computed from primvars, skel bindings and skeleton.
|
inline |
Paths to BlendShape prims.
Definition at line 75 of file dataSourceResolvedPointsBasedPrim.h.
|
static |
Data source locators (on this prim) that this prim depends on.
That is, if the input scene sends a dirty entry for this prim path with dirty locators intersecting these data source locators, we need to call ProcessDirtyLocators.
(Similar to dependendedOnDataSourceLocator in HdDependencySchema).
USDSKELIMAGING_API std::shared_ptr<UsdSkelImagingJointInfluencesData> UsdSkelImagingDataSourceResolvedPointsBasedPrim::GetJointInfluencesData | ( | ) |
Joint influences data computed from primvars.
|
overridevirtual |
Returns the list of names for which Get
(...) is expected to return a non-null value. This call is expected to be threadsafe.
Implements HdContainerDataSource.
|
inline |
Path of prim in input scene (and for prim this data source is for).
Definition at line 69 of file dataSourceResolvedPointsBasedPrim.h.
|
inline |
Primvars of prim in the input scene.
Definition at line 80 of file dataSourceResolvedPointsBasedPrim.h.
USDSKELIMAGING_API HdMatrixDataSourceHandle UsdSkelImagingDataSourceResolvedPointsBasedPrim::GetPrimWorldToLocal | ( | ) | const |
Typed sampled data source for the inverse of the xform matrix of the prim in the input scene.
|
inline |
Resolved skeleton of prim in the input scene.
Definition at line 83 of file dataSourceResolvedPointsBasedPrim.h.
|
inline |
Path of bound skeleton.
Definition at line 72 of file dataSourceResolvedPointsBasedPrim.h.
|
inline |
Skinning method computed from corresponding primvar.
Definition at line 101 of file dataSourceResolvedPointsBasedPrim.h.
|
inline |
Should the points for this primvar be given by an ext computation or from the primvars schema.
Definition at line 107 of file dataSourceResolvedPointsBasedPrim.h.
UsdSkelImagingDataSourceResolvedPointsBasedPrim::HD_DECLARE_DATASOURCE | ( | UsdSkelImagingDataSourceResolvedPointsBasedPrim | ) |
|
static |
C'tor.
Note that it takes the data source for the prim at primPath in the given sceneIndex. This is for performance: the client probably already retrieved this data source so we want to avoid looking it up again here.
Returns a nullptr if there the prim in the input scene does not bind a skeleton.
USDSKELIMAGING_API bool UsdSkelImagingDataSourceResolvedPointsBasedPrim::ProcessDirtyLocators | ( | const TfToken & | dirtiedPrimType, |
const HdDataSourceLocatorSet & | dirtyLocators, | ||
HdSceneIndexObserver::DirtiedPrimEntries * | entries | ||
) |
Dirty internal structures in response to dirty locators for the target (resolved) skeleton prim (dirtiedPrimType = "skeleton"), a targeted skelBlendShape prim (dirtiedPrimType = "skelBlendShape") or the prim in the input scene itself (any other dirtiedPrimType). Fills dirtied prim entries with affected locators for this prim or returns true to indicate that we could not dirty this data source and need to refetch it.