Commit Graph

158 Commits

Author SHA1 Message Date
Mieszko Zielinski
6cc98f7d80 Fixed a crash in navigation system when renaming NavigationData instance while there's already another on of that name. We've already had a safety feature for that but it turns out there might be multiple objects of the same name if Undo/Redo comes to play.
#jira UE-81596
#rb Yoan.StAmant
#review-9528515 @Yoan.StAmant, @Stephen.Holmes

[CL 9545633 by Mieszko Zielinski in Main branch]
2019-10-11 03:46:12 -04:00
yoan stamant
683f2282e6 NavSystemConfigOverride: when loading config for editor world, we apply config from timer next tick to avoid warning when loading objects from PostLoad.
#rnx
[at]mieszko.zielinski


#ROBOMERGE-SOURCE: CL 9456262 via CL 9456285 via CL 9456287
#ROBOMERGE-BOT: (v495-9448618)

[CL 9456290 by yoan stamant in Main branch]
2019-10-07 14:58:06 -04:00
mieszko zielinski
99caddc883 Fixed UNavLinkCustomComponent's issue with unique NavLinkUserId when we can load UNavLinkCustomComponent's owner multipletimes in different places (like when streaming sublevels). This issue made custom links not work reliably when loading serialized navmesh.
As part of the change I've also disabled climb link generation on Athena walls (still enabled in non-Athena games).

#rb Yoan.StAmant, Guillaume.Guay
#rnx
[at]Yoan.StAmant, [at]Stephen.Holmes


#ROBOMERGE-SOURCE: CL 9410194 via CL 9410196 via CL 9410200 via CL 9410201 via CL 9410206
#ROBOMERGE-BOT: (v456-9359915)

[CL 9410207 by mieszko zielinski in Main branch]
2019-10-03 21:47:02 -04:00
Stefan Boberg
1f813eb516 Copying //UE4/Dev-Core to Main (//UE4/Main)
#rb many

[CL 9405827 by Stefan Boberg in Main branch]
2019-10-03 16:26:48 -04:00
Chris Gagnon
8ab0638182 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) for 4.24
#rb none

[CL 9325047 by Chris Gagnon in Main branch]
2019-10-01 20:41:42 -04:00
jon nabozny
6b60663f39 Update Engine and Plugins to use the new Getters / Setters for UActorComponent, USceneComponent, and AActor replicated properties
[at]Ryan.Gerleve, [at]Brian.Bekich
#rb None


#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: jon.nabozny
#ROBOMERGE-SOURCE: CL 9290108 via CL 9290249
#ROBOMERGE-BOT: (v452-9288972)

[CL 9290520 by jon nabozny in Main branch]
2019-09-29 16:49:10 -04:00
steve robb
14cab21e0c Deprecating ARRAY_COUNT and changing it to UE_ARRAY_COUNT.
Replicated from CL# 7924370.

#rb none


#ROBOMERGE-OWNER: steve.robb
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 9279060 via CL 9279063
#ROBOMERGE-BOT: (v443-9013191)

[CL 9279836 by steve robb in Main branch]
2019-09-28 08:19:35 -04:00
mieszko zielinski
47ba3c336d Changed when NavigationSystemConfigOverride initiates nav system creation at runtime
This change is needed in order to ensure that we create navigation system via the nav config override while outside of async-loading logic. Otherwise we severly limit navigation system instances' capabilities of loading assets (like NavArea BP classes).

#rb Stephen.Holmes
[at]Yoan.StAmant, [at]Stephen.Holmes, [at]Mikko.Mononen


#ROBOMERGE-SOURCE: CL 9149252 via CL 9149255 via CL 9149276
#ROBOMERGE-BOT: (v443-9013191)

[CL 9149282 by mieszko zielinski in Main branch]
2019-09-26 12:27:07 -04:00
stephen holmes
aea04bb205 Made some CSV stats off by default as they were firing too frequently.
[FYI] Ben.Woodhouse


#ROBOMERGE-SOURCE: CL 9045167 via CL 9046686 via CL 9046799
#ROBOMERGE-BOT: (v443-9013191)

[CL 9049646 by stephen holmes in Main branch]
2019-09-24 14:49:55 -04:00
mieszko zielinski
575c5cc953 Added a function to UNavigationSystemV1 that unregisteres all NavigationData instnces no longer supported by the nav system (as contolled by SupportedAgentsMask)
#rb none
[at]Yoan.StAmant, [at]Stephen.Holmes, [at]Mikko.Mononen


#ROBOMERGE-SOURCE: CL 9038081 via CL 9043888 via CL 9044090
#ROBOMERGE-BOT: (v443-9013191)

[CL 9047383 by mieszko zielinski in Main branch]
2019-09-24 14:17:23 -04:00
mieszko zielinski
db82cb7e68 Added a way to mark a NavigationData instance to not get auto-removed when there's no navigation system present
#rb none
[at]Stephen.Holmes, [at]Mikko.Mononen, [at]Yoan.StAmant


#ROBOMERGE-SOURCE: CL 9037487 via CL 9043823 via CL 9044034
#ROBOMERGE-BOT: (v443-9013191)

[CL 9047329 by mieszko zielinski in Main branch]
2019-09-24 14:16:50 -04:00
mieszko zielinski
28dff6a61f Added a getter for UNavigationSystemV1::SupportedAgentsMask
#rb none


#ROBOMERGE-SOURCE: CL 9022804 via CL 9022808 via CL 9022811
#ROBOMERGE-BOT: (v443-9013191)

[CL 9022814 by mieszko zielinski in Main branch]
2019-09-24 04:29:23 -04:00
mieszko zielinski
0b4ee4861f Added a way to suspend navigation generation of a single NavigationData instance (as opposed to locking the whole NavigationSystem).
While modifying NavigationData.cpp I've refactored all UE_LOG into UE_VLOG_UELOG for better vislog coverage

#rb Yoan.StAmant, Stephen.Holmes, Mikko.Mononen
[at]Yoan.StAmant, [at]Stephen.Holmes, [at]Mikko.Mononen


#ROBOMERGE-SOURCE: CL 8974874 via CL 8974876 via CL 8974878
#ROBOMERGE-BOT: (v441-8974111)

[CL 8974880 by mieszko zielinski in Main branch]
2019-09-23 10:03:37 -04:00
mieszko zielinski
38e321e0a0 Added a way to query NavigationSystemV1 for NavigationData corresponding to a given agent name
While modifying NavigationSystemV1 I've extended IsNavigationBuildingLocked with a parameter allowing more precise queries.

#rb Yoan.StAmant, Mikko.Mononen
[at]Yoan.StAmant, [at]Stephen.Holmes, [at]Mikko.Mononen


#ROBOMERGE-SOURCE: CL 8886708 via CL 8886728 via CL 8889423
#ROBOMERGE-BOT: (v427-8887818)

[CL 8889507 by mieszko zielinski in Main branch]
2019-09-19 12:00:05 -04:00
james brinkerhoff
48a66b17ea Hotfix from CL 8696491 for UE-79923: Show Navigation does not work
[FYI] Paul.Johnston


#ROBOMERGE-SOURCE: CL 8786492 via CL 8786506 via CL 8792525
#ROBOMERGE-BOT: (v422-8689730)

[CL 8792537 by james brinkerhoff in Main branch]
2019-09-17 20:57:06 -04:00
jason petersohn
16328d08b1 Created INavigationDataInterface::IsNodeRefValid(), and implemented in RecastNavMesh. Called by CharacterMovementComponent::PhysNavWalking to detect when the floor drops out.
#rb zak.middleton, mieszko.zielinski


#ROBOMERGE-SOURCE: CL 8696480 via CL 8697480 via CL 8707959
#ROBOMERGE-BOT: (v422-8689730)

[CL 8709009 by jason petersohn in Main branch]
2019-09-16 21:13:10 -04:00
yoan stamant
a703fee91b NavigationDataHandler: prevent registration of an element that should not be registered when processing the parent chain.
One problematic scenario is when all components from an actor are unregistered and one of them is the navigation parent of the others. In this case, the parent may be unregistered before some of its children and then calls to UpdateNavOctreeParentChain from a child may queue back the unregistered parent. UpdateNavOctreeParentChain will now consider the actual status of the parent (Added or queued for add) before registering it or its children.

[at]mieszko.zielinski [at]guillaume.guay
#rb mieszko.zielinski, guillaume.guay


#ROBOMERGE-SOURCE: CL 8552772 via CL 8557168
#ROBOMERGE-BOT: (v406-8472469)

[CL 8557314 by yoan stamant in Main branch]
2019-09-06 16:30:54 -04:00
yoan stamant
f3717d0e9b RecastNavMeshGenerator: Reworked fix from CL 7419221 to not mark NavBounds dirty for newly created navmesh when active tiles generation is enabled
in the navigation sytem without setting flag bRestrictBuildingToActiveTiles yet. This is required for the initial virtual call to RestrictBuildingToActiveTiles to perform the ActiveTiles initialization.

#rnx
[at]mieszko.zielinski
#rb mieszko.zielinski


#ROBOMERGE-SOURCE: CL 8548670 via CL 8555979
#ROBOMERGE-BOT: (v406-8472469)

[CL 8556169 by yoan stamant in Main branch]
2019-09-06 15:27:08 -04:00
stephen holmes
9ef8a34b02 Adding CSV perf stats
[at]Mieszko.Zielinski


#ROBOMERGE-SOURCE: CL 8428126 via CL 8439014
#ROBOMERGE-BOT: (v404-8404397)

[CL 8439268 by stephen holmes in Main branch]
2019-09-03 18:15:50 -04:00
mieszko zielinski
e3278597a5 Added octree debug drawing to AthenaNavMesh
#rb none


#ROBOMERGE-SOURCE: CL 8382710 via CL 8382912
#ROBOMERGE-BOT: (v403-8382528)

[CL 8382916 by mieszko zielinski in Main branch]
2019-08-30 08:50:11 -04:00
yoan stamant
ba73a1041b NavigationOctree: added additional data in FNavigationOctreeElement to recover from dangling entries.
#rnx
[at]maxime.mercier
#rb maxime.mercier


#ROBOMERGE-SOURCE: CL 8364914 via CL 8368369
#ROBOMERGE-BOT: (v402-8361577)

[CL 8368535 by yoan stamant in Main branch]
2019-08-28 20:52:49 -04:00
mieszko zielinski
a7422297c9 Extended FNavMeshSceneProxyData with a capability to store arbitrary FBoxes and given UNavMeshRenderingComponent's subclassess a way to populate FNavMeshSceneProxyData with data.
#rb Yoan.StAmant
Yoan.StAmant


#ROBOMERGE-SOURCE: CL 8210655 via CL 8212294
#ROBOMERGE-BOT: (v401-8057353)

[CL 8212296 by mieszko zielinski in Main branch]
2019-08-22 11:52:58 -04:00
mieszko zielinski
7964042869 CIS fix
#rb none


#ROBOMERGE-SOURCE: CL 8191556 via CL 8194115 via CL 8207744
#ROBOMERGE-BOT: (v401-8057353)

[CL 8207917 by mieszko zielinski in Main branch]
2019-08-22 00:00:51 -04:00
mieszko zielinski
c9c9e0790d Reorganized how we configure SupportedAgents. From now on every NavigationSystem instance has data on the full set of SupportedAgents (as configured via ProjectSettings) but also has a SupportedAgentsMask, that marks agents supported by the instance. It has been done this way to keep filtered per-agent NavMeshBoundVolumes work regardless of which supported agents a nav sys instance wants to support.
This approach allowed for easy NavigationSystem's config update with NavSystemConfigOverride's properties. NavSystemConfigOverride can now specify if it wants to fully override the pre-existing nav sys instance or if it just wants to append new information (like supported agents) to the existing navigation system instance. There's also an option to do nothing if there's already a navigation system present.

This CL rolls-back a bunch of temp fixes done in past couple of days.

#rb Yoan.StAmant
Yoan.StAmant


#ROBOMERGE-OWNER: mieszko.zielinski
#ROBOMERGE-AUTHOR: mieszko.zielinski
#ROBOMERGE-SOURCE: CL 8187661 via CL 8193395 via CL 8207613
#ROBOMERGE-BOT: (v401-8057353)

[CL 8207758 by mieszko zielinski in Main branch]
2019-08-21 23:59:12 -04:00
mieszko zielinski
fb13d32432 Removed PRAGMA_DISABLE_OPTIMIZATION left behind accidentally
#rb none


#ROBOMERGE-SOURCE: CL 8154701 via CL 8154703 via CL 8154820
#ROBOMERGE-BOT: (v401-8057353)

[CL 8161947 by mieszko zielinski in Main branch]
2019-08-21 09:54:56 -04:00