HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GU_AgentBlendShapeUtils Namespace Reference

Classes

class  InputCache
 

Typedefs

using FloatType = fpreal32
 
using FloatArray = UT_Array< FloatType >
 

Functions

void GU_API addInBetweenShapes (GU_Detail &primary_shape_gdp, const UT_StringArray &inbetween_shape_names, const UT_Array< fpreal > &inbetween_weights)
 
void GU_API addInputsToBaseShape (GU_Detail &base_shape, const UT_StringArray &shape_names, const UT_StringArray &channel_names)
 
void GU_API setDeformerParameters (GU_Detail &base_shape, const UT_StringHolder &attribs, const UT_StringHolder &ptidattr, const UT_StringHolder &primidattr)
 
void GU_API getDeformerParameters (const GU_Detail &base_shape, UT_StringHolder &attribs, UT_StringHolder &ptidattr, UT_StringHolder &primidattr)
 
void GU_API clearInputShapes (GU_Detail &base_shape)
 
void GU_API clearInBetweenShapes (GU_Detail &base_shape)
 Removes the detail attributes added by addInBetweenShapes(). More...
 

Typedef Documentation

Definition at line 61 of file GU_AgentBlendShapeUtils.h.

Function Documentation

void GU_API GU_AgentBlendShapeUtils::addInBetweenShapes ( GU_Detail &  primary_shape_gdp,
const UT_StringArray &  inbetween_shape_names,
const UT_Array< fpreal > &  inbetween_weights 
)

Adds in-between shapes to a blendshape input (the primary shape). This sets up the required detail attributes ("blendshape_shapenames" and "blendshape_inbetweenweights") on the primary shape's geometry. The shapes should be separately added to the shape library.

void GU_API GU_AgentBlendShapeUtils::addInputsToBaseShape ( GU_Detail &  base_shape,
const UT_StringArray &  shape_names,
const UT_StringArray &  channel_names 
)

Adds blendshape inputs to a shape. This sets up the required detail attributes ("blendshape_shapenames" and "blendshape_channels") on the base shape's geometry. The shapes should be separately added to the shape library.

Examples:
SOP/SOP_BouncyAgent.C.
void GU_API GU_AgentBlendShapeUtils::clearInBetweenShapes ( GU_Detail &  base_shape)

Removes the detail attributes added by addInBetweenShapes().

void GU_API GU_AgentBlendShapeUtils::clearInputShapes ( GU_Detail &  base_shape)

Removes the detail attributes added by addInputsToBaseShape() and setDeformerParameters().

void GU_API GU_AgentBlendShapeUtils::getDeformerParameters ( const GU_Detail &  base_shape,
UT_StringHolder &  attribs,
UT_StringHolder &  ptidattr,
UT_StringHolder &  primidattr 
)

Reads the detail attributes for the blendshape deformer's optional parameters. If not specified, attribs is set to "P", ptidattr is set to "id", and primidattr is set to "".

void GU_API GU_AgentBlendShapeUtils::setDeformerParameters ( GU_Detail &  base_shape,
const UT_StringHolder &  attribs,
const UT_StringHolder &  ptidattr,
const UT_StringHolder &  primidattr 
)

Adds detail attributes to the base shape ("blendshape_ptidattr", "blendshape_primidattr") for the blendshape deformer's optional parameters.