unreal.CustomizableObjectInstance

class unreal.CustomizableObjectInstance(outer: Object | None = None, name: Name | str = 'None')

Bases: Object

Customizable Object Instance

C++ Source:

  • Plugin: Mutable

  • Module: CustomizableObject

  • File: CustomizableObjectInstance.h

Editor Properties: (see get_editor_property/set_editor_property)

  • texture_parameter_declarations (Array[Texture2D]): [Read-Write] Textures which can used as values in Texture Parameters.

  • updated_delegate (ObjectInstanceUpdatedDelegate): [Read-Write] Broadcast when the Customizable Object Instance is updated.

add_value_to_float_range(param_name) int32

Increases the range of values of the float with ParamName, returns the index of the new float value, -1 otherwise. The added value is initialized with 0.5f and is the last one of the range.

Parameters:

param_name (str) –

Return type:

int32

add_value_to_int_range(param_name) int32

Increases the range of values of the integer with ParamName and returns the index of the new integer value, -1 otherwise. The added value is initialized with the first integer option and is the last one of the range.

Parameters:

param_name (str) –

Return type:

int32

add_value_to_projector_range(param_name) int32

Increases the range of values of the projector with ParamName, returns the index of the new projector value, -1 otherwise. The added value is initialized with the default projector as set up in the editor and is the last one of the range.

Parameters:

param_name (str) –

Return type:

int32

clone() CustomizableObjectInstance

Clones the instance creating a new identical transient instance.

Return type:

CustomizableObjectInstance

clone_static(outer) CustomizableObjectInstance

Clones the instance creating a new identical static instance with the given Outer.

Parameters:

outer (Object) –

Return type:

CustomizableObjectInstance

create_multi_layer_projector(projector_param_name) bool

Given Multilayer Projector name, create a new Multilayer Projector Helper (if non-existent). See FMultilayerProjector.

Parameters:

projector_param_name (Name) –

Returns:

true if successfully created (or was already created).

Return type:

bool

find_bool_parameter_name_index(param_name) int32

Finds in BoolParameters a parameter with name ParamName, returns the index if found, -1 otherwise.

Parameters:

param_name (str) –

Return type:

int32

find_float_parameter_name_index(param_name) int32

Finds in FloatParameters a parameter with name ParamName, returns the index if found, -1 otherwise.

Parameters:

param_name (str) –

Return type:

int32

find_int_parameter_name_index(param_name) int32

Finds in IntParameters a parameter with name ParamName, returns the index if found, -1 otherwise.

Parameters:

param_name (str) –

Return type:

int32

find_projector_parameter_name_index(param_name) int32

Finds in ProjectorParameters a parameter with name ParamName, returns the index if found, -1 otherwise.

Parameters:

param_name (str) –

Return type:

int32

find_vector_parameter_name_index(param_name) int32

Finds in VectorParameters a parameter with name ParamName, returns the index if found, -1 otherwise.

Parameters:

param_name (str) –

Return type:

int32

for_each_anim_instance(component_index, delegate) None

Execute a delegate for each animation instance involved in this customizable object instance.

Parameters:
get_anim_bp(component_index, slot)

Returns the animation BP for the parameter component and slot, gathered from all the meshes that compose this instance.

Parameters:
  • component_index (int32) –

  • slot (Name) –

Return type:

type(Class)

get_animation_gameplay_tags() GameplayTagContainer

Return the list of tags for this instance.

Return type:

GameplayTagContainer

get_bool_parameter_selected_option(bool_param_name) bool

Sets the bool value “BoolValue” of a bool parameter with name “BoolParamName”.

Parameters:

bool_param_name (str) –

Return type:

bool

get_bool_parameters() Array[CustomizableObjectBoolParameterValue]

Get the array of parameters in the instance that are of type “bool”.

Return type:

Array[CustomizableObjectBoolParameterValue]

get_build_parameter_relevancy() bool

Return true if the parameter relevancy will be updated when this instance is generated.

Return type:

bool

get_color_parameter_selected_option(color_param_name) LinearColor

Gets the value of a color parameter with name “ColorParamName”.

Parameters:

color_param_name (str) –

Return type:

LinearColor

get_current_state() str

Return the name of the current CustomizableObject state this is instance is set to.

Return type:

str

get_customizable_object() CustomizableObject

Get the CustomizableObject that this is an instance of.

Return type:

CustomizableObject

get_float_parameter_selected_option(float_param_name, range_index=-1) float

Gets the value of a float parameter with name “FloatParamName”.

Parameters:
  • float_param_name (str) –

  • range_index (int32) –

Return type:

float

get_float_parameters() Array[CustomizableObjectFloatParameterValue]

Get the array of parameters in the instance that are of type “float”.

Return type:

Array[CustomizableObjectFloatParameterValue]

get_float_value_range(param_name) int32

For multidimensional parameters, return the number of dimensions that the given float parameter supports.

Parameters:

param_name (str) –

Return type:

int32

get_int_parameter_selected_option(param_name, range_index=-1) str

Return the name of the option currently set in the given parameter.

Parameters:
  • param_name (str) –

  • range_index (int32) –

Return type:

str

get_int_parameters() Array[CustomizableObjectIntParameterValue]

Get the array of parameters in the instance that are of type “integer”.

Return type:

Array[CustomizableObjectIntParameterValue]

get_int_value_range(param_name) int32

For multidimensional parameters, return the number of dimensions that the given int parameter supports.

Parameters:

param_name (str) –

Return type:

int32

get_merged_asset_user_data(component_index) Set[AssetUserData]

Returns the AssetUserData that was gathered from all the constituent mesh parts during the last update. It requires that the CustomizableObject had the bEnableAssetUserDataMerge set to true during compilation.

Parameters:

component_index (int32) –

Return type:

Set[AssetUserData]

get_num_components() int32

Return the number of components generated in this instance.

Return type:

int32

get_projector_angle(param_name, range_index=-1) float

Get the current cylindrical projector angle for the parameter with the given name.

Parameters:
  • param_name (str) –

  • range_index (int32) –

Return type:

float

get_projector_direction(param_name, range_index=-1) Vector

Get the current projector direction vector for the parameter with the given name.

Parameters:
  • param_name (str) –

  • range_index (int32) –

Return type:

Vector

get_projector_parameter_type(param_name, range_index=-1) CustomizableObjectProjectorType

Get the current projector type for the parameter with the given name.

Parameters:
  • param_name (str) –

  • range_index (int32) –

Return type:

CustomizableObjectProjectorType

get_projector_parameters() Array[CustomizableObjectProjectorParameterValue]

Get the array of parameters in the instance that are of type “projector”.

Return type:

Array[CustomizableObjectProjectorParameterValue]

get_projector_position(param_name, range_index=-1) Vector

Get the current projector position for the parameter with the given name.

Parameters:
  • param_name (str) –

  • range_index (int32) –

Return type:

Vector

get_projector_scale(param_name, range_index=-1) Vector

Get the current projector scale for the parameter with the given name.

Parameters:
  • param_name (str) –

  • range_index (int32) –

Return type:

Vector

get_projector_up(param_name, range_index=-1) Vector

Get the current projector up vector for the parameter with the given name.

Parameters:
  • param_name (str) –

  • range_index (int32) –

Return type:

Vector

get_projector_value(projector_param_name, range_index=-1) -> (out_pos=Vector, out_direction=Vector, out_up=Vector, out_scale=Vector, out_angle=float, out_type=CustomizableObjectProjectorType)

Get the projector values of a projector parameter with index “ProjectorParamIndex”.

Parameters:
  • projector_param_name (str) –

  • range_index (int32) –

Returns:

out_pos (Vector):

out_direction (Vector):

out_up (Vector):

out_scale (Vector):

out_angle (float):

out_type (CustomizableObjectProjectorType):

Return type:

tuple

get_projector_value_range(param_name) int32

For multidimensional parameters, return the number of dimensions that the given projector parameter supports.

Parameters:

param_name (str) –

Return type:

int32

get_skeletal_mesh(component_index=0) SkeletalMesh

Get the skeletal mesh generated for this instance. If the object has multiple components, an index of the component can be specified.

Parameters:

component_index (int32) –

Return type:

SkeletalMesh

get_texture_parameter_selected_option(texture_param_name, range_index=-1) Name

Gets the value of a texture parameter with name “TextureParamName”.

Parameters:
  • texture_param_name (str) –

  • range_index (int32) –

Return type:

Name

get_texture_parameters() Array[CustomizableObjectTextureParameterValue]

Get the array of parameters in the instance that are of type “texture”.

Return type:

Array[CustomizableObjectTextureParameterValue]

get_texture_value_range(param_name) int32

For multidimensional parameters, return the number of dimensions that the given texture parameter supports.

Parameters:

param_name (str) –

Return type:

int32

get_vector_parameters() Array[CustomizableObjectVectorParameterValue]

Get the array of parameters in the instance that are of type “vector”.

Return type:

Array[CustomizableObjectVectorParameterValue]

has_any_parameters() bool

Return true if the instance has any parameters.

Return type:

bool

has_any_skeletal_mesh() bool

Return true if a skeletal mesh has been generated for any component of this instance.

Return type:

bool

is_parameter_relevant(param_name) bool

Return true if the given parameter has any effect in the current object state, and considering the current values of the other parameters.

Parameters:

param_name (str) –

Return type:

bool

multilayer_projector_create_layer(projector_param_name, index) None

See FMultilayerProjector::CreateLayer.

Parameters:
  • projector_param_name (Name) –

  • index (int32) –

multilayer_projector_create_virtual_layer(projector_param_name, id) None

See FMultilayerProjector::VirtualLayer.

Parameters:
  • projector_param_name (Name) –

  • id (Name) –

multilayer_projector_find_or_create_virtual_layer(projector_param_name, id) MultilayerProjectorVirtualLayer

See FMultilayerProjector::FindOrCreateVirtualLayer.

Parameters:
  • projector_param_name (Name) –

  • id (Name) –

Return type:

MultilayerProjectorVirtualLayer

multilayer_projector_get_layer(projector_param_name, index) MultilayerProjectorLayer

See FMultilayerProjector::GetLayer.

Parameters:
  • projector_param_name (Name) –

  • index (int32) –

Return type:

MultilayerProjectorLayer

multilayer_projector_get_virtual_layer(projector_param_name, id) MultilayerProjectorVirtualLayer

See FMultilayerProjector::GetVirtualLayer.

Parameters:
  • projector_param_name (Name) –

  • id (Name) –

Return type:

MultilayerProjectorVirtualLayer

multilayer_projector_get_virtual_layers(projector_param_name) Array[Name]

See FMultilayerProjector::GetVirtualLayers.

Parameters:

projector_param_name (Name) –

Return type:

Array[Name]

multilayer_projector_num_layers(projector_param_name) int32

See FMultilayerProjector::NumLayers.

Parameters:

projector_param_name (Name) –

Return type:

int32

multilayer_projector_remove_layer_at(projector_param_name, index) None

See FMultilayerProjector::RemoveLayerAt.

Parameters:
  • projector_param_name (Name) –

  • index (int32) –

multilayer_projector_remove_virtual_layer(projector_param_name, id) None

See FMultilayerProjector::RemoveVirtualLayer.

Parameters:
  • projector_param_name (Name) –

  • id (Name) –

multilayer_projector_update_layer(projector_param_name, index, layer) None

See FMultilayerProjector::UpdateLayer.

Parameters:
multilayer_projector_update_virtual_layer(projector_param_name, id, layer) None

See FMultilayerProjector::UpdateVirtualLayer.

Parameters:
remove_multilayer_projector(projector_param_name) None

Given Multilayer Projector name, remove a Multilayer Projector Helper. See FMultilayerProjector.

Parameters:

projector_param_name (Name) –

remove_value_from_float_range(param_name) int32

Remove the last of the float range of values from the parameter ParamName, returns the index of the last valid float, -1 if no values left.

Parameters:

param_name (str) –

Return type:

int32

remove_value_from_int_range(param_name) int32

Remove the last of the integer range of values from the parameter ParamName, returns the index of the last valid integer, -1 if no values left.

Parameters:

param_name (str) –

Return type:

int32

remove_value_from_projector_range(param_name) int32

Remove the last of the projector range of values from the parameter ParamName, returns the index of the last valid projector, -1 if no values left.

Parameters:

param_name (str) –

Return type:

int32

set_bool_parameter_selected_option(bool_param_name, bool_value) None

Sets the bool value “BoolValue” of a bool parameter with name “BoolParamName”.

Parameters:
  • bool_param_name (str) –

  • bool_value (bool) –

set_build_parameter_relevancy(value) None

Set the flag that controls if parameter relevancy will be updated when this instance is generated.

Parameters:

value (bool) –

set_color_parameter_selected_option(color_param_name, color_value) None

Sets the color value “ColorValue” of a color parameter with index “ColorParamIndex”.

Parameters:
set_current_state(state_name) None

Set the CustomizableObject state that this instance will be generated into.

Parameters:

state_name (str) –

set_float_parameter_selected_option(float_param_name, float_value, range_index=-1) None

Sets the float value “FloatValue” of a float parameter with index “FloatParamIndex”.

Parameters:
  • float_param_name (str) –

  • float_value (float) –

  • range_index (int32) –

set_int_parameter_selected_option(param_name, selected_option_name, range_index=-1) None

Set the currently selected option value for the given parameter, by parameter name and option name.

Parameters:
  • param_name (str) –

  • selected_option_name (str) –

  • range_index (int32) –

set_object(object) None

Set the CustomizableObject this instance will be generated from. It is usually not necessary to call this since instances are already generated from a CustomizableObject.

Parameters:

object (CustomizableObject) –

set_projector_angle(projector_param_name, angle, range_index=-1) None

Set only the cylindrical projector angle keeping the rest of values.

Parameters:
  • projector_param_name (str) –

  • angle (float) –

  • range_index (int32) –

set_projector_direction(projector_param_name, direction, range_index=-1) None

Set only the projector direction vector keeping the rest of values.

Parameters:
  • projector_param_name (str) –

  • direction (Vector) –

  • range_index (int32) –

set_projector_position(projector_param_name, pos, range_index=-1) None

Set only the projector position keeping the rest of values.

Parameters:
  • projector_param_name (str) –

  • pos (Vector) –

  • range_index (int32) –

set_projector_scale(projector_param_name, scale, range_index=-1) None

Set only the projector scale keeping the rest of values.

Parameters:
  • projector_param_name (str) –

  • scale (Vector) –

  • range_index (int32) –

set_projector_up(projector_param_name, up, range_index=-1) None

Set only the projector up vector keeping the rest of values.

Parameters:
  • projector_param_name (str) –

  • up (Vector) –

  • range_index (int32) –

set_projector_value(projector_param_name, out_pos, out_direction, out_up, out_scale, out_angle, range_index=-1) None

Sets the projector values of a projector parameter with index “ProjectorParamIndex”.

Parameters:
  • projector_param_name (str) –

  • out_pos (Vector) –

  • out_direction (Vector) –

  • out_up (Vector) –

  • out_scale (Vector) –

  • out_angle (float) –

  • range_index (int32) –

set_random_values() None

Set random values to the parameters.

set_random_values_from_stream(stream) None

Set random values to the parameters using a stream.

Parameters:

stream (RandomStream) –

set_replace_physics_assets(replace_enabled) None

Enable physics asset replacement so that generated skeletal meshes have the merged physics assets of their skeletal mesh parts and reference mesh.

Parameters:

replace_enabled (bool) –

set_texture_parameter_selected_option(texture_param_name, texture_value, range_index=-1) None

Sets the texture value “TextureValue” of a texture parameter with index “TextureParamIndex”.

Parameters:
  • texture_param_name (str) –

  • texture_value (str) –

  • range_index (int32) –

set_vector_parameter_selected_option(vector_param_name, vector_value) None

Sets the vector value “VectorValue” of a bool parameter with index “VectorParamIndex”.

Parameters:
update_skeletal_mesh_async(ignore_close_dist=False, force_high_priority=False) None

Generate the instance with the current parameters and update all the components Skeletal Meshes asynchronously.

Parameters:
  • ignore_close_dist (bool) –

  • force_high_priority (bool) –

update_skeletal_mesh_async_result(callback, ignore_close_dist=False, force_high_priority=False) None

Generate the instance with the current parameters and update all the components Skeletal Meshes asynchronously. Callback will be called once the update finishes, even if it fails.

Parameters:
property updated_delegate: ObjectInstanceUpdatedDelegate

[Read-Write] Broadcast when the Customizable Object Instance is updated.

Type:

(ObjectInstanceUpdatedDelegate)