Navigation
API > API/Plugins > API/Plugins/USDStage
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- AActor
- AUsdStageActor
References
Module | USDStage |
Header | /Engine/Plugins/Importers/USDImporter/Source/USDStage/Public/USDStageActor.h |
Include | #include "USDStageActor.h" |
Syntax
UCLASS (MinimalAPI, Config=USDImporter)
class AUsdStageActor : public AActor
Variables
Type | Name | Description | |
---|---|---|---|
![]() |
UsdUtils::FObjectChangesByPath | AccumulatedInfoChanges | USD can emit multiple notices within the same UE transaction. |
![]() |
UsdUtils::FObjectChangesByPath | AccumulatedResyncChanges | |
![]() ![]() ![]() ![]() |
TObjectPtr< UUsdAssetCache3 > | AssetCache | |
![]() |
TSharedPtr< UE::FUsdGeomBBoxCache > | BBoxCache | USD bounding box cache for the stage. Constructed on-demand |
![]() ![]() |
bool | bCollapseTopLevelPointInstancers | If true, will cause us to collapse any point instancer prim into a single static mesh and static mesh component. |
![]() |
bool | bIsAddingBinding | |
![]() |
bool | bIsModifyingAProperty | |
![]() |
bool | bIsPendingTransactorReset | |
![]() |
bool | bIsTransitioningIntoPIE | We use PostRegisterAllComponents and PostUnregisterAllComponents as main entry points to decide when to load/unload the USD stage. |
![]() |
bool | bIsUndoRedoing | |
![]() |
bool | bLayerReloaded | |
![]() |
UsdUtils::FBlendShapeMap | BlendShapesByPath | Keep track of blend shapes so that we can map 'inbetween shapes' to their separate morph targets when animating |
![]() ![]() ![]() ![]() ![]() |
BlueprintReadOnly | ||
![]() ![]() ![]() ![]() ![]() |
bool | bMergeIdenticalMaterialSlots | If enabled, when multiple mesh prims are collapsed into a single static mesh, identical material slots are merged into one slot. |
![]() ![]() |
bool | bReuseIdenticalAssets | |
![]() ![]() ![]() ![]() ![]() |
bool | bShareAssetsForIdenticalPrims | If true, whenever two prims would have generated identical UAssets (like identical StaticMeshes or materials) then only one instance of that asset is generated, and the asset is shared by the components generated for both prims. |
![]() ![]() ![]() ![]() ![]() |
bool | bUsePrimKindsForCollapsing | Use KindsToCollapse to determine when to collapse prim subtrees or not (defaults to enabled). |
![]() ![]() ![]() ![]() ![]() |
Category | ||
![]() ![]() ![]() ![]() ![]() |
EGeometryCacheImport | GeometryCacheImport | |
![]() |
PRAGMA_DISABLE_DEPRECATION_WARNINGSTSharedPtr< FUsdInfoCache > | InfoCache | Caches various information about prims that are expensive to query |
![]() ![]() ![]() ![]() ![]() |
EUsdInitialLoadSet | InitialLoadSet | These properties are configs so that spawned actors read them from the CDO when spawned. |
![]() ![]() ![]() ![]() ![]() |
EUsdInterpolationType | InterpolationType | |
![]() |
FThreadSafeCounter | IsBlockedFromUsdNotices | |
![]() |
UE::FUsdStage | IsolatedStage | Another stage that has as root layer one of the non-root local layers of UsdStage. |
![]() ![]() ![]() ![]() ![]() |
int32 | KindsToCollapse | Whether to try to combine individual assets and components of the same type on a kind-per-kind basis, like multiple Mesh prims into a single Static Mesh |
![]() ![]() ![]() ![]() ![]() |
TObjectPtr< ULevelSequence > | LevelSequence | |
![]() |
FUsdLevelSequenceHelper | LevelSequenceHelper | |
![]() ![]() ![]() ![]() ![]() |
FName | MaterialPurpose | Specifies which material purbose to use when parsing USD material bindings, in addition to the "allPurpose" fallback. |
![]() |
TMap< FString, TMap< FString, int32 > > | MaterialToPrimvarToUVIndex | When parsing materials, we keep track of which primvar we mapped to which UV channel. |
![]() ![]() ![]() ![]() ![]() |
meta | ||
![]() ![]() ![]() ![]() ![]() |
FUsdMetadataImportOptions | MetadataOptions | Describes if/how we should collect metadata from USD prims onto the assets and components we generate when opening stages |
![]() ![]() ![]() ![]() ![]() |
int32 | NaniteTriangleThreshold | Try enabling Nanite for static meshes that are generated with at least this many triangles |
![]() ![]() ![]() |
TMap< TObjectPtr< UObject >, FString > | ObjectsToWatch | |
![]() |
FFilePath | OldRootLayer | Helps us know whether a transaction changed our RootLayer or not. |
![]() |
FOnStageActorEvent | OnActorDestroyed | |
![]() |
FOnStageActorEvent | OnPreStageChanged | |
![]() |
FOnPrimChanged | OnPrimChanged | |
![]() |
FDelegateHandle | OnRedoHandle | |
![]() |
FDelegateHandle | OnSequencerCreatedHandle | |
![]() |
FOnStageActorEvent | OnStageChanged | |
![]() |
FOnStageActorEvent | OnStageLoaded | |
![]() |
FOnStageActorEvent | OnStageUnloaded | |
![]() |
FOnUsdStageTimeChanged | OnTimeChanged | |
![]() ![]() |
TObjectPtr< UUsdPrimLinkCache > | PrimLinkCache | |
![]() ![]() ![]() |
TSet< FString > | PrimsToAnimate | |
![]() ![]() ![]() ![]() ![]() |
int32 | PurposesToLoad | Only load prims with these specific purposes from the USD file |
![]() ![]() ![]() ![]() ![]() |
FName | RenderContext | Specifies which set of shaders to use when parsing USD materials, in addition to the universal render context. |
![]() |
TArray< UE::FSdfPath > | ResyncedPrimsForThisTransaction | |
![]() ![]() ![]() ![]() |
FFilePath | RootLayer | |
![]() ![]() ![]() ![]() ![]() |
EUsdRootMotionHandling | RootMotionHandling | Describes what to add to the root bone animation within generated AnimSequences, if anything. |
![]() ![]() ![]() |
TObjectPtr< UUsdPrimTwin > | RootUsdTwin | Note: This cannot be instanced: Read the comment in the constructor. |
![]() ![]() ![]() ![]() ![]() |
EUsdStageState | StageState | What to do with the USD Stage pointed to by RootLayer, if any |
![]() ![]() ![]() ![]() ![]() |
int32 | SubdivisionLevel | Subdivision level to use for all subdivision meshes on the opened stage. |
![]() ![]() ![]() |
float | Time | TimeCode to evaluate the USD stage at |
![]() ![]() ![]() |
TObjectPtr< UUsdTransactor > | Transactor | |
![]() ![]() |
TObjectPtr< UUsdAssetCache2 > | UsdAssetCache | |
![]() ![]() |
TObjectPtr< UUsdInfoCache > | UsdInfoCache | |
![]() |
FUsdListener | UsdListener | |
![]() |
UE::FUsdStage | UsdStage | The main UsdStage that is currently opened. |
![]() ![]() ![]() ![]() ![]() |
VisibleAnywhere |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
void | AnimatePrims () |
|
![]() |
void | ||
![]() |
void | CloseUsdStage
(
bool bUnloadIfNeeded |
|
![]() |
UUsdPrimTwin * | ExpandPrim
(
const UE::FUsdPrim& Prim, |
|
![]() ![]() |
const UE::FUsdStage & | Always returns the base stage, regardless of whether we have an isolated stage or not. | |
![]() |
TSharedPtr< UE::FUsdGeomBBoxCache > | GetBBoxCache () |
|
![]() |
const UsdUtils::FBlendShapeMap & | ||
![]() ![]() ![]() ![]() |
TArray< UObject * > | GetGeneratedAssets
(
const FString& PrimPath |
Gets the transient assets that were generated for a prim with a given prim path. |
![]() ![]() ![]() ![]() |
USceneComponent * | GetGeneratedComponent
(
const FString& PrimPath |
Gets the transient component that was generated for a prim with a given prim path. |
![]() |
PRAGMA_DISABLE_DEPRECATION_WARNINGSTSharedPtr< FUsdInfoCache > | GetInfoCache () |
|
![]() ![]() ![]() ![]() |
FString | Returns the root layer identifier of the currently isolated stage if we're in isolated mode, and the empty string otherwise. | |
![]() ![]() |
const UE::FUsdStage & | Always returns the isolated stage, being an invalid stage in case we're not isolating anything. | |
![]() ![]() ![]() |
ULevelSequence * | ||
![]() |
TMap< FString, TMap< FString, int32 > > | ||
![]() |
UUsdPrimTwin * | GetOrCreatePrimTwin
(
const UE::FSdfPath& UsdPrimPath |
|
![]() |
UE::FUsdStage & | ||
![]() |
UE::FUsdStage & | Opens the stage with RootLayer if its not loaded already, and returns the either the isolated stage (if any) or the base stage | |
![]() ![]() |
UUsdPrimTwin * | ||
![]() |
UUsdPrimTwin * | ||
![]() ![]() ![]() ![]() |
FString | GetSourcePrimPath
(
const UObject* Object |
Gets the path to the prim that was parsed to generate the given `Object_. |
![]() ![]() ![]() ![]() |
float | GetTime () |
|
![]() |
FUsdListener & | ||
![]() ![]() |
const FUsdListener & | ||
![]() ![]() |
const UE::FUsdStage & | GetUsdStage () |
Returns either the isolated stage (if any) or the base stage. |
![]() |
void | ||
![]() |
void | HandlePropertyChangedEvent
(
FPropertyChangedEvent& PropertyChangedEvent |
|
![]() |
void | HandleTransactionStateChanged
(
const FTransactionContext& InTransactionContext, |
|
![]() ![]() |
bool | ||
![]() ![]() |
bool | ||
![]() |
void | IsolateLayer
(
const UE::FSdfLayer& Layer |
Enters isolated mode by creating a new USD Stage using the provided layer as its root. |
![]() |
bool | LoadAsset
(
FUsdSchemaTranslationContext& TranslationContext, |
Loads the asset for a single prim |
![]() |
bool | LoadAssets
(
FUsdSchemaTranslationContext& TranslationContext, |
Loads the assets for all prims from StartPrim and its children |
![]() |
void | LoadUsdStage
(
bool bOpenIfNeeded |
|
![]() ![]() ![]() |
void | NewStage () |
Creates a brand new, memory-only USD stage and opens it. |
![]() |
void | OnBeginPIE
(
bool bIsSimulating |
|
![]() |
void | OnLevelActorDeleted
(
AActor* DeletedActor |
|
![]() |
void | OnObjectPropertyChanged
(
UObject* ObjectBeingModified, |
|
![]() |
void | OnObjectsReplaced
(
const TMap< UObject*, UObject* >& ObjectReplacementMap |
|
![]() |
void | OnPostPIEStarted
(
bool bIsSimulating |
|
![]() |
void | OnPostUsdImport
(
FString FilePath |
|
![]() |
void | OnPreUsdImport
(
FString FilePath |
|
![]() |
void | OnSkelAnimationBaked
(
const FString& SkeletonPrimPath |
|
![]() |
void | OnUsdObjectsChanged
(
const UsdUtils::FObjectChangesByPath& InfoChanges, |
|
![]() |
void | OnUsdPrimTwinDestroyed
(
const UUsdPrimTwin& UsdPrimTwin |
|
![]() |
void | OpenUsdStage () |
|
![]() |
void | ||
![]() ![]() |
void | Refresh () |
|
![]() |
void | Creates new ULevelSequence assets for the root layer and sublayers. | |
![]() |
void | ||
![]() |
void | Fills in the current LevelSequences with animations for the prims of the opened stage. | |
![]() |
void | ||
![]() |
void | ||
![]() |
void | ||
![]() ![]() ![]() |
void | SetAssetCache
(
UUsdAssetCache2* NewCache |
|
![]() ![]() ![]() |
void | SetBlockedPrefixFilters
(
const TArray< FString >& NewFilters |
|
![]() ![]() ![]() |
void | SetCollapseTopLevelPointInstancers
(
bool bCollapse |
|
![]() ![]() ![]() |
void | SetCollectFromEntireSubtrees
(
bool bNewCollectValue |
|
![]() ![]() ![]() |
void | SetCollectMetadata
(
bool bNewCollectValue |
|
![]() ![]() ![]() |
void | SetCollectOnComponents
(
bool bNewCollectValue |
|
![]() ![]() ![]() |
void | SetGeometryCacheImport
(
EGeometryCacheImport ImportOption |
|
![]() ![]() ![]() |
void | SetInitialLoadSet
(
EUsdInitialLoadSet NewLoadSet |
|
![]() ![]() ![]() |
void | SetInterpolationType
(
EUsdInterpolationType NewType |
|
![]() ![]() ![]() |
void | SetInvertFilters
(
bool bNewInvertValue |
|
![]() ![]() ![]() |
void | SetIsolatedRootLayer
(
const FString& IsolatedStageRootLayer |
If IsolatedStageRootLayer is the identifier of one of the sublayers of the currently opened stage, this will enter isolated mode by creating a new stage with IsolatedStageRootLayer as its root, and displaying that. |
![]() ![]() ![]() |
void | SetKindsToCollapse
(
int32 NewKindsToCollapse |
|
![]() ![]() ![]() |
void | SetMaterialPurpose
(
const FName& NewMaterialPurpose |
|
![]() ![]() ![]() |
void | SetMergeIdenticalMaterialSlots
(
bool bMerge |
|
![]() ![]() ![]() |
void | SetNaniteTriangleThreshold
(
int32 NewNaniteTriangleThreshold |
|
![]() ![]() ![]() |
void | SetPurposesToLoad
(
int32 NewPurposesToLoad |
|
![]() ![]() ![]() |
void | SetRenderContext
(
const FName& NewRenderContext |
|
![]() ![]() ![]() |
void | SetReuseIdenticalAssets
(
bool bReuse |
|
![]() ![]() ![]() |
void | SetRootLayer
(
const FString& RootFilePath |
|
![]() ![]() ![]() |
void | SetRootMotionHandling
(
EUsdRootMotionHandling NewHandlingStrategy |
|
![]() ![]() ![]() |
void | SetShareAssetsForIdenticalPrims
(
bool bShare |
|
![]() ![]() ![]() |
void | SetStageState
(
EUsdStageState NewStageState |
|
![]() ![]() ![]() |
void | SetSubdivisionLevel
(
int32 NewLevel |
|
![]() ![]() ![]() |
void | SetTime
(
float InTime |
|
![]() |
void | ||
![]() |
void | ||
![]() ![]() ![]() |
void | SetUsdAssetCache
(
UUsdAssetCache3* NewCache |
|
![]() |
void | SetUsdStage
(
const UE::FUsdStage& NewStage |
|
![]() ![]() ![]() |
void | SetUsePrimKindsForCollapsing
(
bool bUse |
|
![]() |
void | Control whether we respond to USD notices or not. | |
![]() |
void | Prevents writing back data to the USD stage whenever our LevelSequences are modified | |
![]() |
bool | UnloadAssets
(
const UE::FSdfPath& PrimPath, |
|
![]() |
void | ||
![]() |
void | UpdatePrim
(
const UE::FSdfPath& UsdPrimPath, |
|
![]() |
void | UpdateSpawnedObjectsTransientFlag
(
bool bTransient |
Overridden from AActor
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | Destroyed () |
Called when this actor is explicitly being destroyed during gameplay or in the editor, not called during level streaming or gameplay ending |
![]() ![]() |
void | Called when an actor is done spawning into the world (from UWorld::SpawnActor), both in the editor and during gameplay For actors with a root component, the location and rotation will have already been set. | |
![]() ![]() |
void | Called after all the components in the Components array are registered, called both in editor and during gameplay. | |
![]() ![]() |
void | Called after all currently registered components are cleared | |
![]() ![]() |
void | Reset () |
Reset actor to initial state - used when restarting level without reloading. |
![]() ![]() |
void | UnregisterAllComponents
(
bool bForReregister |
Unregister all currently registered components |
Overridden from UObject
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | BeginDestroy () |
Called before destroying the object. |
![]() ![]() |
void | PostDuplicate
(
bool bDuplicateForPIE |
Called after duplication & serialization and before PostLoad. |
![]() ![]() |
void | PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Called when a property on this object has been modified externally |
![]() ![]() |
void | PostRename
(
UObject* OldOuter, |
Called at the end of Rename(), but only if the rename was actually carried out |
![]() ![]() |
void | PostTransacted
(
const FTransactionObjectEvent& TransactionEvent |
Called after the object has been transacted in some way. |
![]() ![]() |
void | PreEditChange
(
FProperty* PropertyThatWillChange |
This is called when a property is about to be modified externally |
![]() ![]() |
void | PreEditUndo () |
Called before applying a transaction to the object. |
![]() ![]() |
void | Handles reading, writing, and reference collecting using FArchive. |
Classes
Type | Name | Description | |
---|---|---|---|
![]() |
FOnActorLoaded | ||
![]() |
FOnOpenStageEditorClicked | ||
![]() |
FOnPrimChanged | ||
![]() |
FOnStageActorEvent |
Typedefs
Name | Description |
---|---|
FOnUsdStageTimeChanged |
Constants
Name | Description |
---|---|
OnActorLoaded | |
OnOpenStageEditorClicked |