Hydra schemas are constantly evolving. The following list of schemas is a snapshot from November 2023.
Prim : the flattening scene index will produce these attributes on all prims in the scene.
xform (HdXformSchema)
visibility (HdVisibilitySchema)
purpose (HdPurposeSchema)
extent (HdExtentSchema)
Gprim : all prims for which HdPrimTypeIsGprim(type) is true optionally have these.
displayStyle (HdLegacyDisplayStyleSchema)
refineLevel (int)
flatShadingEnabled (bool)
displacementEnabled (bool)
occludedSelectionShowsThrough (bool)
pointsShadingEnabled (bool)
materialIsFinal (bool)
shadingStyle (TfToken )
reprSelector (VtArray<TfToken> )
cullStyle (TfToken )
instancedBy (HdInstancedBySchema)
paths (VtArray<SdfPath>)
prototypeRoots (VtArray<SdfPath>)
coordSysBinding (HdCoordSysBindingSchema)
<name> (SdfPath ) - representing the path of the coordSys prim bound to <name>
categories (HdCategoriesSchema)
<name> (bool) - representing whether the prim is included or excluded from category <name>
primvars (HdPrimvarsSchema)
<name> (HdPrimvarSchema) - primvar data for <name>
primvarValue (HdSampledDataSource ) - flattened primvar data, one value per topological primvar element.
indexedPrimvarValue (HdSampledDataSource ) - for indexed primvars, de-duplicated primvar data, arbitrary size
indices (VtArray<int>) - for indexed primvars, indices into indexedPrimvarValue, one value per topological primvar element.
interpolation (Token)
role (Token)
materialBindings (HdMaterialBindingsSchema)
<name> (HdMaterialBindingSchema) - material binding for purpose <name>
Mesh
mesh - HdMeshSchema
topology (HdMeshTopologySchema)
faceVertexCounts (VtArray<int>)
faceVertexIndices (VtArray<int>)
holeIndices (VtArray<int>)
Orientation (TfToken )
subdivisionScheme (TfToken )
subdivisionTags (HdSubdivisionTagsSchema) - optional based on subdivisionScheme
faceVaryingLinearInterpolation (TfToken )
interpolateBoundary (TfToken )
triangleSubdivisionRule (TfToken )
cornerIndices (VtArray<int>)
cornerSharpnesses (VtArray<float>)
creaseIndices (VtArray<int>)
creaseLengths (VtArray<int>)
creaseSharpnesses (VtArray<float>)
geomSubsets (HdGeomSubsetsSchema)
<name> (HdGeomSubsetSchema) - geom subset with identifier <name>
type (TfToken ) - typeFaceSet, typeCurveSet, typePointSet
indices (VtArray<int>)
Optional - visibility (bool)
Optional - <name> (HdMaterialBindingSchema) - material binding for purpose <name>
doubleSided (bool)
primvars (HdPrimvarsSchema)
points (HdPrimvarSchema) - required to have interpolation "vertex"
Basis Curves
basisCurves - HdBasisCurvesSchema
topology (HdBasisCurvesTopologySchema)
curveVertexCounts (VtArray<int>)
curveIndices (VtArray<int>)
basis (TfToken )
type (TfToken )
wrap (TfToken )
geomSubsets (HdGeomSubsetsSchema)
primvars (HdPrimvarsSchema)
points (HdPrimvarSchema) - required to have interpolation "vertex"
Volume
volumeFieldBindings (HdVolumeFieldBindingsSchema)
<name> (SdfPath ) - volume field to bind to input <name>
VolumeField
volumeField (HdVolumeFieldSchema)
filePath (SdfAssetPath ) - library agnostic but OpenUSD ships with OpenVDB and Field3D support.
fieldName (TfToken )
fieldIndex (int)
fieldDataType (TfToken )
vectorDataRoleHint (TfToken )
Material
material (HdMaterialSchema)
<name> (HdMaterialNetworkSchema) - material network for material context <name>
materialOverride (HdMaterialOverrideSchema)
primvars (HdPrimvarsSchema)
The following diagram depicts an example scene index prim "Plastic_Material". "Plastic_Material" is a scene index prim that has multiple container data sources, like 'material' (HdMaterialSchema) and 'materialOverride' (HdMaterialOverrideSchema). "Plastic_Material" as a scene index prim also has a scene index prim type, which is type 'material'. (See HdPrimTypeTokens).
The diagram intends to show how the two sibling container data sources "materialOverride" and "material" relate to each other.
Note the following:
The data flows from left to right.
The dotted lines between "materialOverride" and "interfaceMappings" are not true connections and are not backed by the MaterialConnection schema. Each item within "materialOverride" and "interfaceMappings" is loosely coupled by their matching names.
The connections in the diagram are drawn with an 'o' to indicate the source where the connection was authored, and these connections are backed by the MaterialConnection schema.
Light
material (HdMaterialSchema) - we expect a "light" terminal
light (HdLightSchema)
isLight (bool)
materialSyncMode
filters (SdfPathVector)
lightLink (TfToken )
shadowLink (TfToken )
lightFilterLink (TfToken )
primvars (HdPrimvarsSchema)
instancedBy (HdInstancedBySchema)
Camera
camera (HdCameraSchema)
projection (TfToken )
horizontalAperture (float)
verticalAperture (float)
horizontalApertureOffset (float)
verticalApertureOffset (float)
focalLength (float)
clippingRange (GfVec2f )
clippingPlanes (VtArray<GfVec4d>)
fStop (float)
focusDistance (float)
shutterOpen (double)
shutterClose (double)
exposure (float)
focusOn (float)
dofAspect (float)
splitDiopter (HdSplitDiopterSchema)
count (int)
angle (float)
offset1 (float)
width1 (float)
focusDistance1 (float)
offset2 (float)
width2 (float)
focusDistance2 (float)
lensDistortion (HdLensDistortionSchema)
type (TfToken )
k1 (float)
k2 (float)
center (GfVec2f )
anaSq (float)
asym (GfVec2f )
scale (float)
ior (float)
primvars (HdPrimvarsSchema)
Instancer
instancerTopology - HdInstancerTopologySchema
prototypes (VtArray<SdfPath>)
instanceIndices(HdVectorDataSource)
<index> (HdInstanceIndicesSchema)
instancer (SdfPath )
prototypeIndex (int)
instanceIndices (VtArray<int>)
mask (VtArray<bool>)
instanceLocations (VtArray<SdfPath>)
instancedBy (HdInstancedBySchema)
primvars (HdPrimvarsSchema)
RenderBuffer
renderBuffer - HdRenderBufferSchema
dimensions (GfVec3i )
format (HdFormat)
multiSampled (bool)
RenderSettings
renderSettings - HdRenderSettingsSchema