Recast Nav Mesh
Editor Properties: (see get_editor_property/set_editor_property)
actor_guid(Guid): [Read-Only] The GUID for this actor.
agent_height(float): [Read-Write] Size of the tallest agent that will path with this navmesh.
agent_max_slope(float): [Read-Write] The maximum slope (angle) that the agent can move on.
agent_max_step_height(float): [Read-Write] Largest vertical step the agent can perform
agent_radius(float): [Read-Write] Radius of smallest agent to traverse this navmesh
allow_tick_before_begin_play(bool): [Read-Write] 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 for network (overrides bOnlyRelevantToOwner).
auto_destroy_when_finished(bool): [Read-Write] 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] Should this instance auto-destroy when there’s no navigation system on
world when it gets created/loaded
auto_receive_input(AutoReceiveInput): [Read-Write] Automatically registers this actor to receive input from a player.
block_input(bool): [Read-Write] If true, all input on the stack below this actor will not be considered
can_be_damaged(bool): [Read-Write] Whether this actor can take damage. Must be true for damage events (e.g. ReceiveDamage()) to be called. https://www.unrealengine.com/blog/damage-in-ue4: TakeDamage(), ReceiveDamage():
can_be_in_cluster(bool): [Read-Write] If true, this actor can be put inside of a GC Cluster to improve Garbage Collection performance
can_be_main_nav_data(bool): [Read-Write] If set, navigation data can act as default one in navigation system’s queries
can_spawn_on_rebuild(bool): [Read-Only] If set, navigation data will be spawned in persistent level during rebuild if actor doesn’t exist
cell_height(float): [Read-Write] vertical size of voxelization cell
cell_size(float): [Read-Write] horizontal size of voxelization cell
custom_time_dilation(float): [Read-Write] 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.
default_update_overlaps_method_during_level_streaming(ActorUpdateOverlapsMethod): [Read-Only] 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 UpdateOverlapsMethodDuringLevelStreaming:
do_fully_async_nav_data_gathering(bool): [Read-Write] if set, navmesh data gathering will never happen on the game thread and will only be done on background threads
draw_clusters(bool): [Read-Write] should we 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_failed_nav_links(bool): [Read-Write] Draw Failed Nav Links
draw_filled_polys(bool): [Read-Write] if disabled skips filling drawn navmesh polygons
draw_labels_on_path_nodes(bool): [Read-Write] Draw Labels on Path Nodes
draw_marked_forbidden_polys(bool): [Read-Write] Draw Marked Forbidden Polys
draw_nav_links(bool): [Read-Write] Draw Nav Links
draw_nav_mesh_edges(bool): [Read-Write] should we draw border-edges
draw_octree(bool): [Read-Write] should we draw edges of every navmesh’s triangle
draw_octree_details(bool): [Read-Write] Draw Octree Details
draw_offset(float): [Read-Write] vertical offset added to navmesh’s debug representation for better readability
draw_path_colliding_geometry(bool): [Read-Write] Draw input geometry passed to the navmesh generator. Recommend disabling other geometry rendering via viewport showflags in editor.
draw_poly_edges(bool): [Read-Write] should we draw edges of every poly (i.e. not only border-edges)
draw_polygon_labels(bool): [Read-Write] Draw Polygon Labels
draw_tile_bounds(bool): [Read-Write] should we draw the tile boundaries
draw_tile_labels(bool): [Read-Write] Draw Tile Labels
draw_triangle_edges(bool): [Read-Write] should we draw edges of every navmesh’s triangle
enable_auto_lod_generation(bool): [Read-Write] If true, and if World setting has bEnableHierarchicalLOD equal to true, then it will generate LODActor from groups of clustered Actor
enable_drawing(bool): [Read-Write] 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] 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] if set, only single low height span will be allowed under valid one
find_camera_component_when_view_target(bool): [Read-Write] 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] if true, the NavMesh will allocate fixed size pool for tiles, should be enabled to support streaming
force_rebuild_on_load(bool): [Read-Write] By default navigation will skip the first update after being successfully loaded setting bForceRebuildOnLoad to false can override this behavior
generate_overlap_events_during_level_streaming(bool): [Read-Write] 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. UpdateOverlapsMethodDuringLevelStreaming:
heuristic_scale(float): [Read-Write] Euclidean distance heuristic scale used while pathfinding
hidden(bool): [Read-Write] Allows us to only see this Actor in the Editor, and not in the actual game. SetActorHiddenInGame():
ignores_origin_shifting(bool): [Read-Write] Whether this actor should not be affected by world origin shifting.
initial_life_span(float): [Read-Write] 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] The priority of this input component when pushed in to the stack.
instigator(Pawn): [Read-Write] Pawn responsible for damage and other gameplay events caused by this actor.
is_editor_only_actor(bool): [Read-Write] 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 builds
layer_chunk_splits(int32): [Read-Write] number of chunk splits (along single axis) used for layer’s partitioning: ChunkyMonotone
layer_partitioning(RecastPartitioning): [Read-Write] partitioning method for creating tile layers
mark_low_height_areas(bool): [Read-Write] 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] How much navigable shapes can get simplified - the higher the value the more freedom
max_simultaneous_tile_generation_jobs_count(int32): [Read-Write] Sets the limit for number of asynchronous tile generators running at one time, also used for some synchronous tasks
merge_region_size(float): [Read-Write] The size limit of regions to be merged with bigger regions (watershed partitioning only)
min_net_update_frequency(float): [Read-Write] Used to determine what rate to throttle down to when replicated properties are changing infrequently
min_region_area(float): [Read-Write] The minimum dimension of area. Areas smaller than this will be discarded
nav_mesh_origin_offset(Vector): [Read-Write] Use this if you don’t want your tiles to start at (0,0,0)
net_cull_distance_squared(float): [Read-Write] Square of the max distance from the client’s viewpoint that this actor is relevant and will be replicated.
net_dormancy(NetDormancy): [Read-Write] Dormancy setting for actor to take itself off of the replication list without being destroyed on clients.
net_load_on_client(bool): [Read-Write] This actor will be loaded on network clients during map load
net_priority(float): [Read-Write] Priority for this actor when checking for replication in a low bandwidth or saturated situation, higher priority means it is more likely to replicate
net_update_frequency(float): [Read-Write] How often (per second) this actor will be considered for replication, used to determine NetUpdateTime
net_use_owner_relevancy(bool): [Read-Write] If actor has valid Owner, call Owner’s IsNetRelevantFor and GetNetPriority
observed_paths_tick_interval(float): [Read-Write] all observed paths will be processed every ObservedPathsTickInterval seconds
on_actor_begin_overlap(ActorBeginOverlapSignature): [Read-Write] 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. 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] Called when another actor stops overlapping this actor. Components on both this and the other Actor must have bGenerateOverlapEvents set to true to generate overlap events.:
on_actor_hit(ActorHitSignature): [Read-Write] 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. For collisions during physics simulation to generate hit events, ‘Simulation Generates Hit Events’ must be enabled.:
on_begin_cursor_over(ActorBeginCursorOverSignature): [Read-Write] 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] 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] Event triggered when the actor has been explicitly destroyed.
on_end_cursor_over(ActorEndCursorOverSignature): [Read-Write] 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] Event triggered when the actor is being deleted or removed from a level.
on_input_touch_begin(ActorOnInputTouchBeginSignature): [Read-Write] 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] 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] 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] Called when a finger is moved off this actor when touch over events are enabled in the player controller.
on_released(ActorOnReleasedSignature): [Read-Write] 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] Called when the actor is damaged in any way.
on_take_point_damage(TakePointDamageSignature): [Read-Write] Called when the actor is damaged by point damage.
on_take_radial_damage(TakeRadialDamageSignature): [Read-Write] Called when the actor is damaged by radial damage.
only_relevant_to_owner(bool): [Read-Write] 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] 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] 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] Local space pivot offset for the actor, only used in the editor
poly_ref_nav_poly_bits(int32): [Read-Only] Poly Ref Nav Poly Bits
poly_ref_salt_bits(int32): [Read-Only] Poly Ref Salt Bits
poly_ref_tile_bits(int32): [Read-Only] Poly Ref Tile Bits
primary_actor_tick(ActorTickFunction): [Read-Write] 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. https://docs.unrealengine.com/latest/INT/API/Runtime/Engine/Engine/FTickFunction/: AddTickPrerequisiteActor(), AddTickPrerequisiteComponent():
region_chunk_splits(int32): [Read-Write] number of chunk splits (along single axis) used for region’s partitioning: ChunkyMonotone
region_partitioning(RecastPartitioning): [Read-Write] partitioning method for creating navmesh polys
relevant_for_level_bounds(bool): [Read-Write] If true, this actor’s component’s bounds will be included in the level’s bounding box unless the Actor’s class has overridden IsLevelBoundsRelevant
replay_rewindable(bool): [Read-Write] 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] If true, replicate movement/location related properties. Actor must also be set to replicate. SetReplicates(): https://docs.unrealengine.com/latest/INT/Gameplay/Networking/Replication/:
replicated_movement(RepMovement): [Read-Write] Used for replication of our RootComponent’s position and velocity
replicates(bool): [Read-Write] If true, this actor will replicate to remote machines SetReplicates():
root_component(SceneComponent): [Read-Write] The component that defines the transform (location, rotation, scale) of this Actor in the world, all other components must be attached to this one somehow
runtime_generation(RuntimeGenerationType): [Read-Write] Navigation data runtime generation options
sort_navigation_areas_by_cost(bool): [Read-Write] Controls whether Navigation Areas will be sorted by cost before application
to 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] 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] 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] Array of tags that can be used for grouping and categorizing.
tile_number_hard_limit(int32): [Read-Write] Absolute hard limit to number of navmesh tiles. Be very, very careful while modifying it while
having 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)
TileNumberHardLimit is always rounded up to the closest power of 2:
tile_pool_size(int32): [Read-Write] maximum number of tiles NavMesh can hold
tile_size_uu(float): [Read-Write] size of single tile, expressed in uu
update_overlaps_method_during_level_streaming(ActorUpdateOverlapsMethod): [Read-Write] 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. bGenerateOverlapEventsDuringLevelStreaming, DefaultUpdateOverlapsMethodDuringLevelStreaming, GetUpdateOverlapsMethodDuringLevelStreaming():
use_extra_top_cell_when_marking_areas(bool): [Read-Write] 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] Value added to each search height to compensate for error between navmesh polys and walkable geometry