unreal.RecastNavMesh
¶
- class unreal.RecastNavMesh(outer=None, name='None')¶
Bases:
unreal.NavigationData
LWC_TODO_AI: Many of the virtual methods and members should be changed from float to FVector::FReal. Not for 5.0!
C++ Source:
Module: NavigationSystem
File: RecastNavMesh.h
Editor Properties: (see get_editor_property/set_editor_property)
actor_guid
(Guid): [Read-Write] Actor Guid: The GUID for this actor.- Note: Don’t use VisibleAnywhere here to avoid getting the CPF_Edit flag and get this property reset when resetting to defaults.
See FActorDetails::AddActorCategory and EditorUtilities::CopySingleProperty for details.
agent_height
(float): [Read-Write] Agent Height: Size of the tallest agent that will path with this navmesh.agent_max_slope
(float): [Read-Write] Agent Max Slope: The maximum slope (angle) that the agent can move on.agent_max_step_height
(float): [Read-Write] Agent Max Step Height: Largest vertical step the agent can performagent_radius
(float): [Read-Write] Agent Radius: Radius of smallest agent to traverse this navmeshallow_tick_before_begin_play
(bool): [Read-Write] Allow Tick Before Begin Play: Whether we allow this Actor to tick before it receives the BeginPlay event. Normally we don’t tick actors until after BeginPlay; this setting allows this behavior to be overridden. This Actor must be able to tick for this setting to be relevant.always_relevant
(bool): [Read-Write] Always Relevant: Always relevant for network (overrides bOnlyRelevantToOwner).auto_destroy_when_finished
(bool): [Read-Write] Auto Destroy when Finished: If true then destroy self when “finished”, meaning all relevant components report that they are done and no timelines or timers are in flight.auto_destroy_when_no_navigation
(bool): [Read-Write] Auto Destroy when No Navigation: Should this instance auto-destroy when there’s no navigation system onworld when it gets created/loaded
auto_receive_input
(AutoReceiveInput): [Read-Write] Auto Receive Input: Automatically registers this actor to receive input from a player.block_input
(bool): [Read-Write] Block Input: If true, all input on the stack below this actor will not be consideredcall_pre_replication
(bool): [Read-Write] Call Pre Replicationcall_pre_replication_for_replay
(bool): [Read-Write] Call Pre Replication for Replaycan_be_damaged
(bool): [Read-Write] Can be Damaged: Whether this actor can take damage. Must be true for damage events (e.g. ReceiveDamage()) to be called. see: https://www.unrealengine.com/blog/damage-in-ue4 see: TakeDamage(), ReceiveDamage()can_be_in_cluster
(bool): [Read-Write] Can be in Cluster: If true, this actor can be put inside of a GC Cluster to improve Garbage Collection performancecan_be_main_nav_data
(bool): [Read-Write] Can be Main Nav Data: If set, navigation data can act as default one in navigation system’s queriescan_spawn_on_rebuild
(bool): [Read-Only] Can Spawn on Rebuild: If set, navigation data will be spawned in persistent level during rebuild if actor doesn’t existcell_height
(float): [Read-Write] Cell Height: vertical size of voxelization cellcell_size
(float): [Read-Write] Cell Size: horizontal size of voxelization cellcustom_time_dilation
(float): [Read-Write] Custom Time Dilation: Allow each actor to run at a different time speed. The DeltaTime for a frame is multiplied by the global TimeDilation (in WorldSettings) and this CustomTimeDilation for this actor’s tick.data_layers
(Array(ActorDataLayer)): [Read-Write] Data Layers: DataLayers the actor belongs to.default_update_overlaps_method_during_level_streaming
(ActorUpdateOverlapsMethod): [Read-Only] Default Update Overlaps Method During Level Streaming: Default value taken from config file for this class when ‘UseConfigDefault’ is chosen for ‘UpdateOverlapsMethodDuringLevelStreaming’. This allows a default to be chosen per class in the matching config. For example, for Actor it could be specified in DefaultEngine.ini as:[/Script/Engine.Actor] DefaultUpdateOverlapsMethodDuringLevelStreaming = OnlyUpdateMovable
Another subclass could set their default to something different, such as:
[/Script/Engine.BlockingVolume] DefaultUpdateOverlapsMethodDuringLevelStreaming = NeverUpdate see: UpdateOverlapsMethodDuringLevelStreaming
do_fully_async_nav_data_gathering
(bool): [Read-Write] Do Fully Async Nav Data Gathering: if set, navmesh data gathering will never happen on the game thread and will only be done on background threadsdraw_clusters
(bool): [Read-Write] Draw Clusters: Draw navmesh’s clusters and cluster links. (Requires WITH_NAVMESH_CLUSTER_LINKS=1)draw_default_polygon_cost
(bool): [Read-Write] Draw Default Polygon Cost: Draw a label for every poly that indicates its default and fixed costsdraw_failed_nav_links
(bool): [Read-Write] Draw Failed Nav Linksdraw_filled_polys
(bool): [Read-Write] Draw Filled Polys: if disabled skips filling drawn navmesh polygonsdraw_labels_on_path_nodes
(bool): [Read-Write] Draw Labels on Path Nodesdraw_marked_forbidden_polys
(bool): [Read-Write] Draw Marked Forbidden Polysdraw_nav_links
(bool): [Read-Write] Draw Nav Linksdraw_nav_mesh_edges
(bool): [Read-Write] Draw Nav Mesh Edges: Draw border-edgesdraw_octree
(bool): [Read-Write] Draw Octree: Draw edges of every navmesh’s triangledraw_octree_details
(bool): [Read-Write] Draw Octree Detailsdraw_offset
(float): [Read-Write] Draw Offset: vertical offset added to navmesh’s debug representation for better readabilitydraw_path_colliding_geometry
(bool): [Read-Write] Draw Path Colliding Geometry: Draw input geometry passed to the navmesh generator. Recommend disabling other geometry rendering via viewport showflags in editor.draw_poly_edges
(bool): [Read-Write] Draw Poly Edges: Draw edges of every poly (i.e. not only border-edges)draw_polygon_flags
(bool): [Read-Write] Draw Polygon Flags: Draw a label for every poly that indicates its poly and area flagsdraw_polygon_labels
(bool): [Read-Write] Draw Polygon Labels: Draw a label for every poly that indicates its poly and tile indicesdraw_tile_bounds
(bool): [Read-Write] Draw Tile Bounds: Draw the tile boundariesdraw_tile_labels
(bool): [Read-Write] Draw Tile Labelsdraw_triangle_edges
(bool): [Read-Write] Draw Triangle Edges: Draw edges of every navmesh’s triangleenable_auto_lod_generation
(bool): [Read-Write] Enable Auto LODGeneration: Whether this actor should be considered or not during HLOD generation.enable_drawing
(bool): [Read-Write] Enable Drawing: if set to true then this navigation data will be drawing itself when requested as part of “show navigation”filter_low_span_from_tile_cache
(bool): [Read-Write] Filter Low Span from Tile Cache: if set, only low height spans with corresponding area modifier will be stored in tile cache (reduces memory, can’t modify without full tile rebuild)filter_low_span_sequences
(bool): [Read-Write] Filter Low Span Sequences: if set, only single low height span will be allowed under valid onefind_camera_component_when_view_target
(bool): [Read-Write] Find Camera Component when View Target: If true, this actor should search for an owned camera component to view through when used as a view target.fixed_tile_pool_size
(bool): [Read-Write] Fixed Tile Pool Size: if true, the NavMesh will allocate fixed size pool for tiles, should be enabled to support streamingforce_rebuild_on_load
(bool): [Read-Write] Force Rebuild on Load: By default navigation will skip the first update after being successfully loaded setting bForceRebuildOnLoad to false can override this behaviorgenerate_overlap_events_during_level_streaming
(bool): [Read-Write] Generate Overlap Events During Level Streaming: If true, this actor will generate overlap Begin/End events when spawned as part of level streaming, which includes initial level load. You might enable this is in the case where a streaming level loads around an actor and you want Begin/End overlap events to trigger. see: UpdateOverlapsMethodDuringLevelStreamingheuristic_scale
(float): [Read-Write] Heuristic Scale: Euclidean distance heuristic scale used while pathfindinghidden
(bool): [Read-Write] Hidden: Allows us to only see this Actor in the Editor, and not in the actual game. see: SetActorHiddenInGame()hlod_layer
(HLODLayer): [Read-Write] HLODLayer: The UHLODLayer in which this actor should be included.ignores_origin_shifting
(bool): [Read-Write] Ignores Origin Shifting: Whether this actor should not be affected by world origin shifting.initial_life_span
(float): [Read-Write] Initial Life Span: How long this Actor lives before dying, 0=forever. Note this is the INITIAL value and should not be modified once play has begun.input_priority
(int32): [Read-Write] Input Priority: The priority of this input component when pushed in to the stack.instigator
(Pawn): [Read-Write] Instigator: Pawn responsible for damage and other gameplay events caused by this actor.is_editor_only_actor
(bool): [Read-Write] Is Editor Only Actor: Whether this actor is editor-only. Use with care, as if this actor is referenced by anything else that reference will be NULL in cooked buildsis_spatially_loaded
(bool): [Read-Write] Is Spatially Loaded: Determine if this actor is spatially loaded when placed in a partitioned world.If true, this actor will be loaded when in the range of any streaming sources and if (1) in no data layers, or (2) one or more of its data layers are enabled. If false, this actor will be loaded if (1) in no data layers, or (2) one or more of its data layers are enabled.
is_world_partitioned
(bool): [Read-Write] Is World Partitioned: In a world partitioned map, is this navmesh using world partitioninglayer_chunk_splits
(int32): [Read-Write] Layer Chunk Splits: number of chunk splits (along single axis) used for layer’s partitioning: ChunkyMonotonelayer_partitioning
(RecastPartitioning): [Read-Write] Layer Partitioning: partitioning method for creating tile layerslayers
(Array(Name)): [Read-Write] Layers: Layers the actor belongs to. This is outside of the editoronly data to allow hiding of LD-specified layers at runtime for profiling.mark_low_height_areas
(bool): [Read-Write] Mark Low Height Areas: mark areas with insufficient free height above instead of cutting them out (accessible only for area modifiers using replace mode)max_simplification_error
(float): [Read-Write] Max Simplification Error: How much navigable shapes can get simplified - the higher the value the more freedommax_simultaneous_tile_generation_jobs_count
(int32): [Read-Write] Max Simultaneous Tile Generation Jobs Count: Sets the limit for number of asynchronous tile generators running at one time, also used for some synchronous tasksmerge_region_size
(float): [Read-Write] Merge Region Size: The size limit of regions to be merged with bigger regions (watershed partitioning only)min_net_update_frequency
(float): [Read-Write] Min Net Update Frequency: Used to determine what rate to throttle down to when replicated properties are changing infrequentlymin_region_area
(float): [Read-Write] Min Region Area: The minimum dimension of area. Areas smaller than this will be discardednav_mesh_origin_offset
(Vector): [Read-Write] Nav Mesh Origin Offset: Use this if you don’t want your tiles to start at (0,0,0)net_cull_distance_squared
(float): [Read-Write] Net Cull Distance Squared: Square of the max distance from the client’s viewpoint that this actor is relevant and will be replicated.net_dormancy
(NetDormancy): [Read-Write] Net Dormancy: Dormancy setting for actor to take itself off of the replication list without being destroyed on clients.net_load_on_client
(bool): [Read-Write] Net Load on Client: This actor will be loaded on network clients during map loadnet_priority
(float): [Read-Write] Net Priority: Priority for this actor when checking for replication in a low bandwidth or saturated situation, higher priority means it is more likely to replicatenet_update_frequency
(float): [Read-Write] Net Update Frequency: How often (per second) this actor will be considered for replication, used to determine NetUpdateTimenet_use_owner_relevancy
(bool): [Read-Write] Net Use Owner Relevancy: If actor has valid Owner, call Owner’s IsNetRelevantFor and GetNetPriorityobserved_paths_tick_interval
(float): [Read-Write] Observed Paths Tick Interval: all observed paths will be processed every ObservedPathsTickInterval secondson_actor_begin_overlap
(ActorBeginOverlapSignature): [Read-Write] On Actor Begin Overlap: Called when another actor begins to overlap this actor, for example a player walking into a trigger. For events when objects have a blocking collision, for example a player hitting a wall, see ‘Hit’ events. note: Components on both this and the other Actor must have bGenerateOverlapEvents set to true to generate overlap events.on_actor_end_overlap
(ActorEndOverlapSignature): [Read-Write] On Actor End Overlap: Called when another actor stops overlapping this actor. note: Components on both this and the other Actor must have bGenerateOverlapEvents set to true to generate overlap events.on_actor_hit
(ActorHitSignature): [Read-Write] On Actor Hit: Called when this Actor hits (or is hit by) something solid. This could happen due to things like Character movement, using Set Location with ‘sweep’ enabled, or physics simulation. For events when objects overlap (e.g. walking into a trigger) see the ‘Overlap’ event. note: For collisions during physics simulation to generate hit events, ‘Simulation Generates Hit Events’ must be enabled.on_begin_cursor_over
(ActorBeginCursorOverSignature): [Read-Write] On Begin Cursor Over: Called when the mouse cursor is moved over this actor if mouse over events are enabled in the player controller.on_clicked
(ActorOnClickedSignature): [Read-Write] On Clicked: Called when the left mouse button is clicked while the mouse is over this actor and click events are enabled in the player controller.on_destroyed
(ActorDestroyedSignature): [Read-Write] On Destroyed: Event triggered when the actor has been explicitly destroyed.on_end_cursor_over
(ActorEndCursorOverSignature): [Read-Write] On End Cursor Over: Called when the mouse cursor is moved off this actor if mouse over events are enabled in the player controller.on_end_play
(ActorEndPlaySignature): [Read-Write] On End Play: Event triggered when the actor is being deleted or removed from a level.on_input_touch_begin
(ActorOnInputTouchBeginSignature): [Read-Write] On Input Touch Begin: Called when a touch input is received over this actor when touch events are enabled in the player controller.on_input_touch_end
(ActorOnInputTouchEndSignature): [Read-Write] On Input Touch End: Called when a touch input is received over this component when touch events are enabled in the player controller.on_input_touch_enter
(ActorBeginTouchOverSignature): [Read-Write] On Input Touch Enter: Called when a finger is moved over this actor when touch over events are enabled in the player controller.on_input_touch_leave
(ActorEndTouchOverSignature): [Read-Write] On Input Touch Leave: Called when a finger is moved off this actor when touch over events are enabled in the player controller.on_released
(ActorOnReleasedSignature): [Read-Write] On Released: Called when the left mouse button is released while the mouse is over this actor and click events are enabled in the player controller.on_take_any_damage
(TakeAnyDamageSignature): [Read-Write] On Take Any Damage: Called when the actor is damaged in any way.on_take_point_damage
(TakePointDamageSignature): [Read-Write] On Take Point Damage: Called when the actor is damaged by point damage.on_take_radial_damage
(TakeRadialDamageSignature): [Read-Write] On Take Radial Damage: Called when the actor is damaged by radial damage.only_relevant_to_owner
(bool): [Read-Write] Only Relevant to Owner: If true, this actor is only relevant to its owner. If this flag is changed during play, all non-owner channels would need to be explicitly closed.optimize_bp_component_data
(bool): [Read-Write] Optimize BPComponent Data: Whether to cook additional data to speed up spawn events at runtime for any Blueprint classes based on this Actor. This option may slightly increase memory usage in a cooked build.perform_voxel_filtering
(bool): [Read-Write] Perform Voxel Filtering: controls whether voxel filtering will be applied (via FRecastTileGenerator::ApplyVoxelFilter).Results in generated navmesh better fitting navigation bounds, but hits (a bit) generation performance
pivot_offset
(Vector): [Read-Write] Pivot Offset: Local space pivot offset for the actor, only used in the editorpoly_ref_nav_poly_bits
(int32): [Read-Only] Poly Ref Nav Poly Bitspoly_ref_salt_bits
(int32): [Read-Only] Poly Ref Salt Bitspoly_ref_tile_bits
(int32): [Read-Only] Poly Ref Tile Bitsprimary_actor_tick
(ActorTickFunction): [Read-Write] Primary Actor Tick: Primary Actor tick function, which calls TickActor(). Tick functions can be configured to control whether ticking is enabled, at what time during a frame the update occurs, and to set up tick dependencies. see: https://docs.unrealengine.com/API/Runtime/Engine/Engine/FTickFunction see: AddTickPrerequisiteActor(), AddTickPrerequisiteComponent()region_chunk_splits
(int32): [Read-Write] Region Chunk Splits: number of chunk splits (along single axis) used for region’s partitioning: ChunkyMonotoneregion_partitioning
(RecastPartitioning): [Read-Write] Region Partitioning: partitioning method for creating navmesh polysrelevant_for_level_bounds
(bool): [Read-Write] Relevant for Level Bounds: If true, this actor’s component’s bounds will be included in the level’s bounding box unless the Actor’s class has overridden IsLevelBoundsRelevantreplay_rewindable
(bool): [Read-Write] Replay Rewindable: If true, this actor will only be destroyed during scrubbing if the replay is set to a time before the actor existed. Otherwise, RewindForReplay will be called if we detect the actor needs to be reset. Note, this Actor must not be destroyed by gamecode, and RollbackViaDeletion may not be used.replicate_movement
(bool): [Read-Write] Replicate Movement: If true, replicate movement/location related properties. Actor must also be set to replicate. see: SetReplicates() see: https://docs.unrealengine.com/InteractiveExperiences/Networking/Actorsreplicated_movement
(RepMovement): [Read-Write] Replicated Movement: Used for replication of our RootComponent’s position and velocityreplicates
(bool): [Read-Write] Replicates: If true, this actor will replicate to remote machines see: SetReplicates()root_component
(SceneComponent): [Read-Write] Root Component: The component that defines the transform (location, rotation, scale) of this Actor in the world, all other components must be attached to this one somehowruntime_generation
(RuntimeGenerationType): [Read-Write] Runtime Generation: Navigation data runtime generation optionsruntime_grid
(Name): [Read-Write] Runtime Grid: Determine in which partition grid this actor will be placed in the partition (if the world is partitioned). If None, the decision will be left to the partition.sort_navigation_areas_by_cost
(bool): [Read-Write] Sort Navigation Areas by Cost: Controls whether Navigation Areas will be sorted by cost before applicationto navmesh during navmesh generation. This is relevant when there are areas overlapping and we want to have area cost express area relevancy as well. Setting it to true will result in having area sorted by cost, but it will also increase navmesh generation cost a bit
spawn_collision_handling_method
(SpawnActorCollisionHandlingMethod): [Read-Write] Spawn Collision Handling Method: Controls how to handle spawning this actor in a situation where it’s colliding with something else. “Default” means AlwaysSpawn here.sprite_scale
(float): [Read-Write] Sprite Scale: The scale to apply to any billboard components in editor builds (happens in any WITH_EDITOR build, including non-cooked games).tags
(Array(Name)): [Read-Write] Tags: Array of tags that can be used for grouping and categorizing.tile_generation_debug
(RecastNavMeshTileGenerationDebug): [Read-Write] Tile Generation Debugtile_number_hard_limit
(int32): [Read-Write] Tile Number Hard Limit: Absolute hard limit to number of navmesh tiles. Be very, very careful while modifying it whilehaving big maps with navmesh. A single, empty tile takes 176 bytes and empty tiles are allocated up front (subject to change, but that’s where it’s at now)
note: TileNumberHardLimit is always rounded up to the closest power of 2
tile_pool_size
(int32): [Read-Write] Tile Pool Size: maximum number of tiles NavMesh can holdtile_size_uu
(float): [Read-Write] Tile Size UU: size of single tile, expressed in uuupdate_overlaps_method_during_level_streaming
(ActorUpdateOverlapsMethod): [Read-Write] Update Overlaps Method During Level Streaming: Condition for calling UpdateOverlaps() to initialize overlap state when loaded in during level streaming. If set to ‘UseConfigDefault’, the default specified in ini (displayed in ‘DefaultUpdateOverlapsMethodDuringLevelStreaming’) will be used. If overlaps are not initialized, this actor and attached components will not have an initial state of what objects are touching it, and overlap events may only come in once one of those objects update overlaps themselves (for example when moving). However if an object touching it does initialize state, both objects will know about their touching state with each other. This can be a potentially large performance savings during level loading and streaming, and is safe if the object and others initially overlapping it do not need the overlap state because they will not trigger overlap notifications.Note that if ‘bGenerateOverlapEventsDuringLevelStreaming’ is true, overlaps are always updated in this case, but that flag determines whether the Begin/End overlap events are triggered. see: bGenerateOverlapEventsDuringLevelStreaming, DefaultUpdateOverlapsMethodDuringLevelStreaming, GetUpdateOverlapsMethodDuringLevelStreaming()
use_extra_top_cell_when_marking_areas
(bool): [Read-Write] Use Extra Top Cell when Marking Areas: Expand the top of the area nav modifier’s bounds by one cell height when applying to the navmesh.If unset, navmesh on top of surfaces might not be marked by marking bounds flush with top surfaces (since navmesh is generated slightly above collision, depending on cell height).
vertical_deviation_from_ground_compensation
(float): [Read-Write] Vertical Deviation from Ground Compensation: Value added to each search height to compensate for error between navmesh polys and walkable geometry