unreal.StaticMesh
¶
- class unreal.StaticMesh(outer=None, name='None')¶
Bases:
unreal.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] 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] Importing data and options used for this meshasset_user_data
(Array(AssetUserData)): [Read-Write] 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] 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] 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] 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 and serialized version of ForceMiplevelsToBeResident.has_navigation_data
(bool): [Read-Write] 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] The light map coordinate indexlight_map_resolution
(int32): [Read-Write] The light map resolutionlod_for_collision
(int32): [Read-Write] 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_for_occluder_mesh
(int32): [Read-Write] Specifies which mesh LOD to use as occluder geometry for software occlusion Set to -1 to not use this mesh as occluderlod_group
(Name): [Read-Write] The LOD group to which this mesh belongs.lpv_bias_multiplier
(float): [Read-Write] Bias multiplier for Light Propagation Volume lightingnav_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] 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] 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] 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] 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] 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] Information for thumbnail rendering
- add_material(material) → Name¶
Adds a new material and return its slot name
- Parameters
material (MaterialInterface) –
- Returns
- 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) → None¶
Builds static mesh LODs from the array of StaticMeshDescriptions passed in
- Parameters
static_mesh_descriptions (Array(StaticMeshDescription)) –
build_simple_collision (bool) –
- classmethod create_static_mesh_description(outer=None) → StaticMeshDescription¶
Create an empty StaticMeshDescription object, to describe a static mesh at runtime
- Parameters
outer (Object) –
- Returns
- 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) –
- Returns
- Return type
- get_bounding_box() → Box¶
Returns the bounding box, in local space including bounds extension(s), of the StaticMesh asset
- Returns
- 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_minimum_lod_for_platform(platform_name) → int32¶
Get Minimum LODFor Platform
- Parameters
platform_name (Name) –
- Returns
- Return type
int32
- get_minimum_lod_for_platforms()¶
Get Minimum LODFor Platforms
- get_num_lods() → int32¶
Returns the number of LODs used by the mesh.
- Returns
- 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) –
- Returns
- Return type
int32
- property lod_for_collision¶
[Read-Write] 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)
- property lpv_bias_multiplier¶
[Read-Only] Bias multiplier for Light Propagation Volume lighting
- Type
(float)
- 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) –
- property static_materials¶
[Read-Write] Static Materials
- Type