USDUtilities

Choose your operating system:

Windows

macOS

Linux

Classes

Name

Description

Public struct

FCaseSensitiveStringMapFuncs

Case sensitive hashing function for TMap

Public struct

FConvertedVtValue

Corresponds to a value held by a pxr::VtValue converted into UE types.

Public class

FScopedUsdMessageLog

Starts sending USD messages to the message log and will display the message log on destruction if any messages were logged.

Public struct

FUsdBlendShape

Public struct

FUsdBlendShapeInbetween

Public class

FUsdLogManager

Public class

FUsdMessageLog

Public class

IUsdUtilitiesModule

Typedefs

Name

Description

FBlendShapeMap

Maps from a full blend shape path (e.g. '/Scene/Mesh/BlendShapeName') to the parsed FUsdBlendShape struct.

FConvertedVtValueComponent

WARNING: Do not change the order of the types in this TVariant declaration, or it will break backwards compatibility with data that was serialized before the change, due to how `operator<<( FArchive& Ar, FConvertedVtValueComponent& Component )_ is implemented

FConvertedVtValueEntry

Represents a single non-array value held by a pxr::VtValue object, like a 'float', a 'TfToken' or a 'GfMatrix3d'

Enums

Functions

Name Description

Public function

void

 

UsdUtils::AddPayload

(
    UE::FUsdPrim& Prim,
    const TCHAR* AbsoluteFilePath
)

Adds a payload on Prim pointing at the default prim of the layer at AbsoluteFilePath

Public function

void

 

UsdUtils::AddReference

(
    UE::FUsdPrim& Prim,
    const TCHAR* AbsoluteFilePath
)

Adds a reference on Prim to the layer at AbsoluteFilePath

Public function

T *

 

UsdUtils::FindOrCreateObject

(
    UObject* InParent,
    const FString& InName,
    EObjectFlags Flags
)

Public function

TArray< UE::...

 

UsdUtils::GetAllPrimsOfType

(
    const UE::FUsdPrim& StartPrim,
    const TCHAR* SchemaName
)

Public function

TArray< UE::...

 

UsdUtils::GetAllPrimsOfType

(
    const UE::FUsdPrim& StartPrim,
    const TCHAR* SchemaName,
    TFunction< bool ...,
    const TArray< const TCHAR* >&...
)

Public function

UUsdAssetImp...

 

UsdUtils::GetAssetImportData

(
    UObject* Asset
)

Public function

double

 

UsdUtils::GetDefaultTimeCode()

Returns the time code for non-timesampled values. Usually a quiet NaN.

Public function

double

 

UsdUtils::GetEarliestTimeCode()

Returns the earliest possible timecode.

Public function

UE::FSdfPath

 

UsdUtils::GetPrimSpecPathForLayer

(
    const UE::FUsdPrim& Prim,
    const UE::FSdfLayer& Layer
)

Returns a path exactly like Prim.GetPrimPath(), except that if the prim is within variant sets, it will return the full path with variant selections in it (i.e. the spec path), like "/Root/Child{Varset=Var}Inner" instead of just "/Root/Child/Inner".

Public function

FString

 

UsdUtils::GetUniqueName

(
    FString Name,
    const TSet< FString >& UsedNames
)

Appends numbered suffixes to Name until the result is not contained in UsedNames, and returns it.

Public function

bool

 

UsdUtils::HasInheritedVisibility

(
    const UE::FUsdPrim& Prim,
    double TimeCode
)

Returns whether Prim has visibility set to 'inherited'

Public function

bool

 

UsdUtils::HasInvisibleParent

(
    const UE::FUsdPrim& Prim,
    const UE::FUsdPrim& RootPrim,
    double TimeCode
)

Travels up from Prim and returns true if we hit any invisible prim before we hit the stage pseudoroot.

Public function

bool

 

UsdUtils::IsVisible

(
    const UE::FUsdPrim& Prim,
    double TimeCode
)

Returns if the ComputedVisibility for Prim says it should be visible

Public function

void

 

UsdUtils::MakeInvisible

(
    UE::FUsdPrim& Prim,
    double TimeCode
)

Public function

void

 

UsdUtils::MakeVisible

(
    UE::FUsdPrim& Prim,
    double TimeCode
)

Will call UsdGeomImageable::MakeVisible/MakeInvisible if Prim is a UsdGeomImageable

Public function

void

 

UsdUtils::RemoveAllPrimSpecs

(
    const UE::FUsdPrim& Prim,
    const UE::FSdfLayer& Layer
)

Removes all the prim specs for Prim on the given Layer.

Public function

bool

 

UsdUtils::RemoveNumberedSuffix

(
    FString& Prefix
)

Removes any numbered suffix, followed by any number of underscores (e.g. Asset_2, Asset__232_31 or Asset94 all become 'Asset'), making sure the string is kept at least one character long.

Public function

bool

 

UsdUtils::RenamePrim

(
    UE::FUsdPrim& Prim,
    const TCHAR* NewPrimName
)

Renames a single prim to a new name WARNING: This will lead to issues if called from within a pxr::SdfChangeBlock.

Public function

void

 

UsdUtils::ResolveWeightsForBlendShape

(
    const FUsdBlendShape& InBlendShape,
    float InWeight,
    float& OutPrimaryWeight,
    TArray< float >& OutInbetweenWeigh...
)

We decompose inbetween blend shapes on import into separate morph targets, alongside the primary blend shape, which also becomes a morph target.

Public function

FString

 

UsdUtils::SanitizeUsdIdentifier

(
    const TCHAR* InIdentifier
)

Returns a modified version of InIdentifier that can be used as a USD prim or property name.