Navigation
API > API/Plugins > API/Plugins/CustomizableObject > API/Plugins/CustomizableObject/MuCO
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UCustomizableObject
References
| Module | CustomizableObject |
| Header | /Engine/Plugins/Experimental/Mutable/Source/CustomizableObject/Classes/MuCO/CustomizableObject.h |
| Include | #include "MuCO/CustomizableObject.h" |
Syntax
UCLASS&40;BlueprintType, Config&61;Engine&41;
class UCustomizableObject : public UObject
Variables
| Type | Name | Description | |
|---|---|---|---|
| TArray< FCustomizableObjectExtensionData > | AlwaysLoadedExtensionData | mu::ExtensionData::Index is an index into this array when mu::ExtensionData::Origin is ConstantAlwaysLoaded | |
| TMap< FString, TSoftClassPtr< UAnimInstance > > | AnimBPAssetsMap | Stores the UAnimBlueprint assets gathered from the SkeletalMesh nodes during compilation, to be used in mesh generation in-game | |
| TArray< FAnimBpOverridePhysicsAssetsInfo > | AnimBpOverridePhysiscAssetsInfo | ||
| bool | bEnable16BitBoneWeights | TODO: Enable 16 bit weights. | |
| bool | bEnableAltSkinWeightProfiles | ||
| bool | bEnableAnimBpPhysicsAssetsManipualtion | ||
| bool | bEnableClothing | ||
| bool | bEnablePhysicsAssetMerge | ||
| bool | bEnableRealTimeMorphTargets | ||
| bool | bEnableUseRefSkeletalMeshAsPlaceholder | Use the SkeletalMesh of reference as a placeholder until the custom mesh is ready to use. | |
| bool | bIsChildObject | True if this object references a parent object. | |
| TMap< FString, FMutableCachedPlatformData > | CachedPlatformsData | Map of PlatformName to CachedPlatformData. Only valid while cooking. | |
| TArray< FCustomizableObjectMeshToMeshVertData > | ClothMeshToMeshVertData | ||
| TArray< FCustomizableObjectClothConfigData > | ClothSharedConfigsData | ||
| ECustomizableObjectCompilationState | CompilationState | ||
| FCompilationOptions | CompileOptions | Compilation options to use in editor and for packaging for this object. | |
| TArray< FCustomizableObjectClothingAssetData > | ContributingClothingAssetsData | ||
| TArray< FMorphTargetInfo > | ContributingMorphTargetsInfo | ||
| TArray< FString > | CustomizableObjectClassTags | Customizable Object Population data start ------------------------------------------------. | |
| TSet< FGuid > | CustomizableObjectGuidsInCompilation | Set of all the guids of all the CustomizableObjects in the compilation. | |
| TMap< FString, FParameterTags > | CustomizableObjectParametersTags | Map of parameters available for the Customizable Object and their tags | |
| TMap< FString, FString > | CustomizableObjectPathMap | Map to identify what CustomizableObject owns a parameter. | |
| TMap< FString, FCustomizableObjectIdPair > | GroupNodeMap | ||
| TMap< uint64, FMutableStreamableBlock > | HashToStreamableBlock | Map of Hash to Streaming blocks, used to stream a block of data representing a resource from the BulkData | |
| FGuid | Identifier | Unique Identifier - used to locate Model and Streamable data on disk. Should not be modified. | |
| TArray< FMutableModelImageProperties > | ImageProperties | ||
| TArray< FProfileParameterDat > | InstancePropertiesProfiles | ||
| FMutableLODSettings | LODSettings | ||
| TArray< FName > | LowPriorityTextures | Textures marked as low priority will generate defaulted resident mips (if texture streaming is enabled). | |
| TSoftObjectPtr< UMutableMaskOutCache > | MaskOutCache | Stores the textures that will be used to mask-out areas in projectors. | |
| EMutableCompileMeshType | MeshCompileType | Options when compiling this customizable object (see EMutableCompileMeshType declaration for info) | |
| TArray< FMorphTargetVertexData > | MorphTargetReconstructionData | ||
| int32 | NumMeshComponentsInRoot | Amount of components in this CO. Set at the end of the model compilation process. | |
| TMap< FString, FParameterUIData > | ParameterUIDataMap | Stores all the parameter UI metadata information for all the dependencies of this Customizable Object | |
| TMap< FString, TSoftObjectPtr< class UPhysicsAsset > > | PhysicsAssetsMap | Stores the physics assets gathered from the SkeletalMesh nodes during compilation, to be used in mesh generation in-game | |
| TArray< FString > | PopulationClassTags | Array to strore all the Population Class tags | |
| FPostCompileDelegate | PostCompileDelegate | ||
| TArray< TSoftObjectPtr< UMaterialInterface > > | ReferencedMaterials | List of Materials referenced by this or any child customizable object. | |
| TArray< FName > | ReferencedMaterialSlotNames | List of Material slot names for the materials referenced by this or any child customizable object. | |
| TArray< TSoftObjectPtr< UTexture > > | ReferencedPassThroughTextures | ||
| TArray< TSoftObjectPtr< USkeleton > > | ReferencedSkeletons | List of skeletons referenced by any of the parts of this customizable object. | |
| TArray< TObjectPtr< class USkeletalMesh > > | ReferenceSkeletalMeshes | All the SkeletalMeshes generated for this CustomizableObject instances will use the Reference Skeletal Mesh properties for everything that Mutable doesn't create or modify. | |
| TArray< FMutableRefSkeletalMeshData > | ReferenceSkeletalMeshesData | All the SkeletalMeshes generated for this CustomizableObject instances will use the Reference Skeletal Mesh properties for everything that Mutable doesn't create or modify. | |
| ECustomizableObjectRelevancy | Relevancy | Hide this property because it is not used yet. | |
| TArray< FMutableSkinWeightProfileInfo > | SkinWeightProfilesInfo | ||
| TArray< FMutableRefSocket > | SocketArray | Stores the sockets provided by the part skeletal meshes, to be merged in the generated meshes | |
| TObjectPtr< UEdGraph > | Source | Editor graph. | |
| TMap< FString, FParameterUIData > | StateUIDataMap | Stores all the state UI metadata information for all the dependencies of this Customizable Object | |
| TArray< FCustomizableObjectStreamedExtensionData > | StreamedExtensionData | mu::ExtensionData::Index is an index into this array when mu::ExtensionData::Origin is ConstantStreamed | |
| FGuid | VersionId | Used to verify the derived data matches this version of the Customizable Object. | |
| TArray< TSoftObjectPtr< UCustomizableObject > > | WorkingSet | Array of elements to use with compile option CompileType = WorkingSet. |
Constructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| FReply | AddNewParameterProfile
(
FString Name, |
Add a profile that stores the values of the parameters used by the CustomInstance. | |
| void | AddUncompiledCOWarning
(
const FString& AdditionalLoggingInfo |
||
| void | ApplyStateForcedValuesToParameters
(
int32 State, |
Modify the provided mutable parameters so that the forced values for the given customizable object state are applied. | |
| void | CacheMergedSkeleton
(
const int32 ComponentIndex, |
Add merged skeleton to the cache. It'll be cached as a TWeakObjPtr. | |
| void | CachePlatformData
(
const ITargetPlatform* InTargetPlatform, |
Cache platform data for cook | |
| void | Unless we are packaging there is no need for keeping all the data generated during compilation, this information is stored in the derived data. | ||
| void | CompileForTargetPlatform
(
const ITargetPlatform* TargetPlatform, |
Compile the object for a specific platform - Compile for Cook Customizable Object. | |
| bool | Compile the object if Automatic Compilation is enabled and the object can be compiled. | ||
| UCustomizableObjectInstance * | |||
| void | |||
| int32 | FindIntParameterValue
(
int32 ParamIndex, |
||
| FString | FindIntParameterValueName
(
int32 ParamIndex, |
||
| int32 | FindParameter
(
const FString& Name |
Get the index of a parameter. | |
| int32 | |||
| const TArray< FName > & | |||
| bool | GetBoolParameterDefaultValue
(
const FString& InParameterName |
Get the default value of a parameter of type Bool. | |
| TObjectPtr< USkeleton > | GetCachedMergedSkeleton
(
int32 ComponentIndex, |
Return a valid Skeletons if cached. ComponentIndex and SkeletonIds are used as a key to find the skeleton. | |
| FLinearColor | GetColorParameterDefaultValue
(
const FString& InParameterName |
Get the default value of a parameter of type Color. | |
| FGuid | |||
| FString | GetCompiledDataFileName
(
bool bIsModel, |
Compose file name. | |
| FString | GetCompiledDataFolderPath
(
bool bIsEditorData |
Compose folder name where the data is stored. | |
| int32 | Method to query the amount of components this Customizable Object has. | ||
| int32 | |||
| float | GetFloatParameterDefaultValue
(
const FString& InParameterName |
Get the default value of a parameter of type Float. | |
| const FString & | GetIntParameterAvailableOption
(
int32 ParamIndex, |
Gets the Name of the option at position K in the list of available options for the int parameter. | |
| int32 | GetIntParameterDefaultValue
(
const FString& InParameterName |
Get the default value of a parameter of type Int. | |
| int32 | GetIntParameterNumOptions
(
int32 ParamIndex |
Returns how many possible options an int parameter has. | |
| void | GetLowPriorityTextureNames
(
TArray< FString >& OutTextureNames |
Return the names used by mutable to identify which mu::Image should be considered of LowPriority. | |
| TSharedPtr< mu::Model, ESPMode::ThreadSafe > | GetModel () |
||
| int32 | GetNumLODs () |
||
| int | Get the number of parameters available in any instance. | ||
| int32 | GetParameterDescriptionCount
(
const FString& ParamName |
Get the number of description images available for a parameter. | |
| const FString & | GetParameterName
(
int32 ParamIndex |
Get the name of a parameter. | |
| EMutableParameterType | GetParameterType
(
int32 ParamIndex |
Get the type of a parameter. | |
| EMutableParameterType | GetParameterTypeByName
(
const FString& Name |
Get the type of a parameter. | |
| FParameterUIData | GetParameterUIMetadata
(
const FString& ParamName |
||
| FParameterUIData | GetParameterUIMetadataFromIndex
(
int32 ParamIndex |
||
| FCustomizableObjectPrivateData * | GetPrivate () |
||
| void | GetProjectorParameterDefaultValue
(
const FString& InParameterName, |
Get the default value of a parameter of type Projector. | |
| FCustomizableObjectProjector | GetProjectorParameterDefaultValue
(
const FString& InParameterName |
Get the default value of a projector with the provided name | |
| TSoftObjectPtr< UMaterialInterface > | GetReferencedMaterialAssetPtr
(
uint32 Index |
||
| TSoftObjectPtr< USkeleton > | GetReferencedSkeletonAssetPtr
(
uint32 Index |
||
| USkeletalMesh * | GetRefSkeletalMesh
(
int32 ComponentIndex |
||
| FMutableRefSkeletalMeshData * | GetRefSkeletalMeshData
(
int32 ComponentIndex |
||
| int32 | |||
| FString | GetStateName
(
int32 StateIndex |
||
| int32 | GetStateParameterCount
(
const FString& StateName |
||
| int32 | GetStateParameterCount
(
int32 StateIndex |
||
| int32 | GetStateParameterIndex
(
int32 StateIndex, |
||
| FString | GetStateParameterName
(
int32 StateIndex, |
||
| FString | GetStateParameterName
(
const FString& StateName, |
||
| FParameterUIData | GetStateUIMetadata
(
const FString& StateName |
||
| FParameterUIData | GetStateUIMetadataFromIndex
(
int32 StateIndex |
||
| const UCustomizableObjectBulk * | Return a pointer to the BulkData subobject, only valid in packaged builds. | ||
| FName | GetTextureParameterDefaultValue
(
const FString& InParameterName |
Get the default value of a parameter of type Texture. | |
| FGuid | GetVersionId () |
||
| bool | IsCompiled () |
This will always return true in a packaged game. | |
| bool | IsLocked () |
See UCustomizableObjectSystem::LockObject() | |
| bool | IsParameterMultidimensional
(
const int32& InParamIndex |
Return true or false depending if the parameter at the index provided is multidimensional or not. | |
| bool | IsParameterMultidimensional
(
const FString& InParameterName |
Return true or false depending if the parameter at the index provided is multidimensional or not. | |
| void | LoadCompiledData
(
FArchive& Ar, |
||
| void | LoadCompiledDataFromDisk
(
bool bIsEditorData, |
Load compiled data from disk, this is used to load Editor Compilations and Cook Compilations (when using OnCookStart) | |
| void | LoadEmbeddedData
(
FArchive& Ar |
Data that may be stored in the asset itself, only in packaged builds. | |
| void | Call before using Mutable's Projector testing with mask out features. | ||
| void | To avoid missing resources in packages we load all the resources. Loading the references added in the BeginCacheForCookedPlatformData will help us ensure they are included in the final package. | ||
| void | Called to load the reference SkeletalMesh if it needs to be used as a placeholder and it's not loaded. | ||
| void | Callback of LoadReferenceSkeletalMeshesAsync. | ||
| void | PostCompile () |
||
| void | SaveCompiledData
(
FArchive& Ar, |
Generic Save/Load methods to write/read compiled data | |
| void | SaveEmbeddedData
(
FArchive& Ar |
||
| void | |||
| void | SetBoneNamesArray
(
const TArray< FName >& BoneNames |
||
| void | SetModel
(
TSharedPtr< mu::Model, ESPMode::ThreadSafe > Model |
||
| void | Remove skeletons that have been destroyed by the garbage collector from the cache. | ||
| void | Call after having used Mutable's Projector testing with mask out features. It should be unloaded because it can spend quite a lot of memory. | ||
| void | |||
| void | Rebuild HashToStreamableBlocks and ParameterProperties from the current compiled model. | ||
| void | Create new GUID for this CO. |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | BeginCacheForCookedPlatformData
(
const ITargetPlatform* TargetPlatform |
Starts caching of platform specific data for the target platform Called when cooking before serialization so that object can prepare platform specific data Not called during normal loading of objects | |
| void | BeginDestroy () |
Called before destroying the object. | |
| void | GetAssetRegistryTags
(
TArray< FAssetRegistryTag >& OutTags |
Used to set the flag IsRoot | |
| FString | GetDesc () |
Returns a one line description of an object for viewing in the thumbnail view of the generic browser | |
| bool | IsCachedCookedPlatformDataLoaded
(
const ITargetPlatform* TargetPlatform |
Have we finished loading all the cooked platform data for the target platforms requested in BeginCacheForCookedPlatformData | |
| bool | IsEditorOnly () |
Called during saving to determine if the object is forced to be editor only or not | |
| void | PostDuplicate
(
EDuplicateMode::Type DuplicateMode |
||
| void | PostLoad () |
Do any object-specific cleanup required immediately after loading an object. | |
| void | PostRename
(
UObject* OldOuter, |
Called at the end of Rename(), but only if the rename was actually carried out | |
| void | PreSave
(
FObjectPreSaveContext SaveContext |
Presave function. | |
| void | Handles reading, writing, and reference collecting using FArchive. |
Constants
| Name | Description |
|---|---|
| CurrentSupportedVersion | This is a manual version number for the binary blobs in this asset. |
Deprecated Variables
| Type | Name | Description | |
|---|---|---|---|
| TObjectPtr< class USkeletalMesh > | ReferenceSkeletalMesh_DEPRECATED | All the SkeletalMeshes generated for this CustomizableObject instances will use the Reference Skeletal Mesh properties for everything that Mutable doesn't create or modify. |