unreal.StaticMesh
¶
- class unreal.StaticMesh(outer: Optional[Object] = None, name: Union[Name, str] = 'None')¶
Bases:
StreamableRenderAsset
A StaticMesh is a piece of geometry that consists of a static set of polygons. Static Meshes can be translated, rotated, and scaled, but they cannot have their vertices animated in any way. As such, they are more efficient to render than other types of geometry such as USkeletalMesh, and they are often the basic building block of levels created in the engine. see: https://docs.unrealengine.com/latest/INT/Engine/Content/Types/StaticMeshes/ see: AStaticMeshActor, UStaticMeshComponent
C++ Source:
Module: Engine
File: StaticMesh.h
Editor Properties: (see get_editor_property/set_editor_property)
allow_cpu_access
(bool): [Read-Write] Allow CPUAccess: If true, will keep geometry data CPU-accessible in cooked builds, rather than uploading to GPU memory and releasing it from CPU memory. This is required if you wish to access StaticMesh geometry data on the CPU at runtime in cooked builds (e.g. to convert StaticMesh to ProceduralMeshComponent)asset_import_data
(AssetImportData): [Read-Write] Asset Import Data: Importing data and options used for this meshasset_user_data
(Array[AssetUserData]): [Read-Write] Asset User Data: Array of user data stored with the assetbody_setup
(BodySetup): [Read-Write] Body Setupcomplex_collision_mesh
(StaticMesh): [Read-Write] Complex Collision Meshcustomized_collision
(bool): [Read-Write] Customized Collision: If the user has modified collision in any way or has custom collision imported. Used for determining if to auto generate collision on importdistance_field_self_shadow_bias
(float): [Read-Write] Distance Field Self Shadow Bias: Useful for reducing self shadowing from distance field methods when using world position offset to animate the mesh’s vertices.generate_mesh_distance_field
(bool): [Read-Write] Generate Mesh Distance Field: Whether to generate a distance field for this mesh, which can be used by DistanceField Indirect Shadows. This is ignored if the project’s ‘Generate Mesh Distance Fields’ setting is enabled.global_force_mip_levels_to_be_resident
(bool): [Read-Write] Global Force Mip Levels to be Resident: Global and serialized version of ForceMiplevelsToBeResident.has_navigation_data
(bool): [Read-Write] Has Navigation Data: If true, mesh will have NavCollision property with additional data for navmesh generation and usage.Set to false for distant meshes (always outside navigation bounds) to save memory on collision data.
light_map_coordinate_index
(int32): [Read-Write] Light Map Coordinate Index: The light map coordinate indexlight_map_resolution
(int32): [Read-Write] Light Map Resolution: The light map resolutionlod_for_collision
(int32): [Read-Write] LODFor Collision: Specifies which mesh LOD to use for complex (per-poly) collision. Sometimes it can be desirable to use a lower poly representation for collision to reduce memory usage, improve performance and behaviour. Collision representation does not change based on distance to camera.lod_group
(Name): [Read-Write] LODGroup: The LOD group to which this mesh belongs.nanite_settings
(MeshNaniteSettings): [Read-Write] Nanite Settings: Settings related to building Nanite data.nav_collision
(NavCollisionBase): [Read-Only] Nav Collisionnegative_bounds_extension
(Vector): [Read-Write] Negative Bounds Extensionnever_stream
(bool): [Read-Write] Never Streamnum_cinematic_mip_levels
(int32): [Read-Write] Num Cinematic Mip Levels: Number of mip-levels to use for cinematic quality.positive_bounds_extension
(Vector): [Read-Write] Positive Bounds Extensionstatic_materials
(Array[StaticMaterial]): [Read-Write] Static Materialssupport_gpu_uniformly_distributed_sampling
(bool): [Read-Write] Support Gpu Uniformly Distributed Sampling: If true, a GPU buffer containing required data for uniform mesh surface sampling will be created at load time. It is created from the cpu data so bSupportUniformlyDistributedSampling is also required to be true.support_physical_material_masks
(bool): [Read-Write] Support Physical Material Masks: If true, complex collision data will store UVs and face remap table for use when performing PhysicalMaterialMask lookups in cooked builds. Note the increased memory cost for this functionality.support_ray_tracing
(bool): [Read-Write] Support Ray Tracing: If true, a ray tracing acceleration structure will be built for this mesh and it may be used in ray tracing effectssupport_uniformly_distributed_sampling
(bool): [Read-Write] Support Uniformly Distributed Sampling: Mesh supports uniformly distributed sampling in constant time. Memory cost is 8 bytes per triangle. Example usage is uniform spawning of particles.thumbnail_info
(ThumbnailInfo): [Read-Only] Thumbnail Info: Information for thumbnail rendering
- add_material(material) Name ¶
Adds a new material and return its slot name
- Parameters:
material (MaterialInterface) –
- Return type:
- add_socket(socket) None ¶
Add a socket object in this StaticMesh.
- Parameters:
socket (StaticMeshSocket) –
- build_from_static_mesh_descriptions(static_mesh_descriptions, build_simple_collision=False, fast_build=True) None ¶
Builds static mesh LODs from the array of StaticMeshDescriptions passed in
- Parameters:
static_mesh_descriptions (Array[StaticMeshDescription]) –
build_simple_collision (bool) –
fast_build (bool) –
- classmethod create_static_mesh_description(outer=None) StaticMeshDescription ¶
Create an empty StaticMeshDescription object, to describe a static mesh at runtime
- Parameters:
outer (Object) –
- Return type:
- find_socket(socket_name) StaticMeshSocket ¶
Find a socket object in this StaticMesh by name. Entering NAME_None will return NULL. If there are multiple sockets with the same name, will return the first one.
- Parameters:
socket_name (Name) –
- Return type:
- get_bounding_box() Box ¶
Returns the bounding box, in local space including bounds extension(s), of the StaticMesh asset
- Return type:
- get_bounds() BoxSphereBounds ¶
Returns the number of bounds of the mesh.
- Returns:
The bounding box represented as box origin with extents and also a sphere that encapsulates that box
- Return type:
- get_material(material_index) MaterialInterface ¶
Gets a Material given a Material Index and an LOD number
- Parameters:
material_index (int32) –
- Returns:
Requested material
- Return type:
- get_material_index(material_slot_name) int32 ¶
Gets a Material index given a slot name
- Parameters:
material_slot_name (Name) –
- Returns:
Requested material
- Return type:
int32
- get_min_lod_for_quality_levels() -> (quality_level_minimum_lo_ds=Map[PerQualityLevels, int32], default=int32)¶
Get Min LODFor Quality Levels
- Returns:
quality_level_minimum_lo_ds (Map[PerQualityLevels, int32]):
default (int32):
- Return type:
tuple
- get_minimum_lod_for_platform(platform_name) int32 ¶
Get Minimum LODFor Platform
- Parameters:
platform_name (Name) –
- Return type:
int32
- get_minimum_lod_for_quality_level(quality_level) int32 ¶
Get Minimum LODFor Quality Level
- Parameters:
quality_level (Name) –
- Return type:
int32
- get_num_lods() int32 ¶
Returns the number of LODs used by the mesh.
- Return type:
int32
- get_num_sections(lod) int32 ¶
Returns number of Sections that this StaticMesh has, in the supplied LOD (LOD 0 is the highest)
- Parameters:
lod (int32) –
- Return type:
int32
- get_num_triangles(lod_index) int32 ¶
Returns the number of triangles in the render data for the specified LOD.
- Parameters:
lod_index (int32) –
- Return type:
int32
- get_sockets_by_tag(socket_tag) Array[StaticMeshSocket] ¶
Returns a list of sockets with the provided tag.
- Parameters:
socket_tag (str) –
- Return type:
- get_static_mesh_description(lod_index) StaticMeshDescription ¶
Return a new StaticMeshDescription referencing the MeshDescription of the given LOD
- Parameters:
lod_index (int32) –
- Return type:
- property lod_for_collision: int¶
[Read-Write] LODFor Collision: Specifies which mesh LOD to use for complex (per-poly) collision. Sometimes it can be desirable to use a lower poly representation for collision to reduce memory usage, improve performance and behaviour. Collision representation does not change based on distance to camera.
- Type:
(int32)
- remove_socket(socket) None ¶
Remove a socket object in this StaticMesh by providing it’s pointer. Use FindSocket() if needed.
- Parameters:
socket (StaticMeshSocket) –
- set_material(material_index, new_material) None ¶
Sets a Material given a Material Index
- Parameters:
material_index (int32) –
new_material (MaterialInterface) –
- set_min_lod_for_quality_levels(quality_level_minimum_lo_ds, default=-1) None ¶
Allow to override min lod quality levels on a staticMesh and it Default value (-1 value for Default dont override its value).
- Parameters:
quality_level_minimum_lo_ds (Map[PerQualityLevels, int32]) –
default (int32) –
- set_minimum_lod_for_platform(platform_name, min_lod) None ¶
Set Minimum LODFor Platform
- Parameters:
platform_name (Name) –
min_lod (int32) –
- property static_materials: Array[StaticMaterial]¶
[Read-Write] Static Materials
- Type: