Commit Graph

29 Commits

Author SHA1 Message Date
Matt Kuhlenschmidt
c0511b26d4 Moved BSP and all the related editor modes to a plugin so it can be disabled in some situations
#ROBOMERGE-OWNER: matt.kuhlenschmidt
#ROBOMERGE-AUTHOR: matt.kuhlenschmidt
#ROBOMERGE-SOURCE: CL 9870262 via CL 9870265
#ROBOMERGE-BOT: (v548-9842178)

#rb chris.gagnon

[CL 9872761 by Matt Kuhlenschmidt in Main branch]
2019-10-28 16:05:49 -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
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
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
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
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
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
guillaume guay
2273dc7f19 Deprecating RequestRegistration and adding RequestRegistrationForNextTick since the optional parameter is no more used.
#rb mieszko.zielinski, yoan.stamant


#ROBOMERGE-SOURCE: CL 7935910 via CL 7939385
#ROBOMERGE-BOT: (v391-7919777)

[CL 7939549 by guillaume guay in Main branch]
2019-08-09 20:23:53 -04:00
guillaume guay
cc57ba02c6 - Moved the work done in ProcessPendingNavigation from a Task to be triggered via the navigation system tick, after the other required actors were processed such as navigation bound volumes and that the owning level of the navigation data is full loaded.
- Added a call to ConditionalPopulateNavOctree to fix navigation not being regenerated when adding a level with some navigation data to a current world that didn't have one.
- Renamed boolean to better names
- MarkPendingKill the navigation instance when no compatible nav bound for it in the navigation system insead of in the nav mesh generator (except for the abstract nav data)

#rnx
#cr maxime.mercier

Merging manually CL 7842753 using //Release-10.30 to //Main


#ROBOMERGE-SOURCE: CL 7881604 via CL 7914626
#ROBOMERGE-BOT: (v389-7813075)

[CL 7914819 by guillaume guay in Main branch]
2019-08-08 23:32:33 -04:00
guillaume guay
a8821f80b4 - Added navigation system config 'bUseNavDataInAdditionalLevelWhenDuplicatedAgent". When set to TRUE, adding or streaming an additional level containing an already registered navigation data, it will unregister current one and register the new one;
- Added navigation system config 'bGenerateNavDataWhenNoCompatibleNavBound". When set to TRUE (default) it will still generate navigation data if any NavBoundVolume is compatible with its NavDataConfig, if false it gets rid of that navigation data;
- Make sure that when "bSpawnNavDataInNavBoundsLevel" is TRUE, it builds the navigation data in the first level containing a NavBoundVolume that actually supports this navigation data config (not any first one);
- Added virtual method on NavigateSystem "OnNavSystemOverriden" to give a chance to inspect previous NavigationSystem when getting overriden by a nav config override;
- Added some missing NavigationSystem clean up logic.

#tests client/server standalone Creative AI, Phoebe and regular + editor
#cr maxime.mercier
[FYI] mieszko.zielinski, stephen.holmes, yoan.stamant


#ROBOMERGE-OWNER: guillaume.guay
#ROBOMERGE-AUTHOR: guillaume.guay
#ROBOMERGE-SOURCE: CL 7679442 via CL 7679443 via CL 7688466
#ROBOMERGE-BOT: (v383-7686620)

[CL 7688470 by guillaume guay in Main branch]
2019-08-01 12:53:04 -04:00
yoan stamant
d29f1887a0 Added number of dirty areas to GameplayDebugger category navmesh
#rnx
[at]maxime.mercier
#rb guillaume.guay


#ROBOMERGE-SOURCE: CL 7289773 via CL 7306493
#ROBOMERGE-BOT: (v370-7290619)

[CL 7306546 by yoan stamant in Main branch]
2019-07-15 06:42:54 -04:00
mieszko zielinski
f7f3268d52 Extracted NavigationSystemV1's logic concerning NavOctree and navigation DirtyAreas into a separate structures for reusability
Notable changes:
- Added FNavigationOctreeController that wraps up what used to be NavigationSystemV1's navoctree-related logic
- Added FNavigationDirtyAreasController that wraps up what used to be NavigationSystemV1's DirtyAreas-related logic
- Added FNavigationDataHandler that is a helper struct that wraps up what used to be NavigationSystemV1's logic related to operation involving both navoctree and dirty areas
- Deprecated both FNavDataConfig.NavigationDataClass and FNavDataConfig.NavigationDataClassName and replaced them with a single NavDataClass property
- FNavigationOctree is not responsible for hashing element objects and storing their ElementId
- NavOctree elements how know about the octree they belong to (via a member property).

[at]Yoan.StAmant, [at]Maxime.Mercier, [at]Guillaume.Guay
#rb Yoan.StAmant


#ROBOMERGE-OWNER: mieszko.zielinski
#ROBOMERGE-AUTHOR: mieszko.zielinski
#ROBOMERGE-SOURCE: CL 7249089 via CL 7262555
#ROBOMERGE-BOT: (v369-7254125)

[CL 7262559 by mieszko zielinski in Main branch]
2019-07-10 13:31:21 -04:00
mieszko zielinski
b2955d2bdc Removed the remaining the traces of the original UNavigationSystem from the engine code
[at]Yoan.StAmant
#rb Yoan.StAmant


#ROBOMERGE-SOURCE: CL 7090744 via CL 7104302
#ROBOMERGE-BOT: (v367-6836689)

[CL 7104406 by mieszko zielinski in Main branch]
2019-06-20 10:54:21 -04:00
Mieszko Zielinski
b51e0bbe37 Un-virtualized UNavigationSystemV1::AddDirtyArea before it gets shipped in 4.23 #UE4 #Athena
It wasn't virtual pre-4.23 and was added to accomodate on of the internal project's requirements. I've refactored the project-specific code to not need it.
This change is required in support of the soon-to-come navigation system refactor/extension.

#jira none
#review-6618928 @Yoan.StAmant
#rb Yoan.StAmant

[CL 6628443 by Mieszko Zielinski in Dev-Framework branch]
2019-05-24 07:33:53 -04:00
Mieszko Zielinski
a389bc8746 Replaced UNavigationSystemV1::ConditionalPopulateNavOctreeActor with UNavigationSystemV1::AddLevelToOctree #UE4
Removed UNavigationSystemV1::ConditionalPopulateNavOctreeActor has been added to allow one of the internal project filter out some actors being added to nav octree. I'm removing this function before it ships with 4.23. I've replaced the function with UNavigationSystemV1::AddLevelToOctree that gets called in the same circumstances but a bit "higher level" - it's operating on the whole ULevel rather than individual actors, which ends up being more efficient.

#rb none
#jira none

[CL 6604304 by Mieszko Zielinski in Dev-Framework branch]
2019-05-22 08:18:41 -04:00
Dan Oconnor
1057caa0d6 Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @5937262
#rb None

[CL 5965729 by Dan Oconnor in Dev-Framework branch]
2019-04-17 22:11:57 -04:00
Marc Audy
82e0666ce7 Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 5450266
#rb
#rnx

[CL 5459329 by Marc Audy in Dev-Framework branch]
2019-03-19 16:16:11 -04:00
Marc Audy
6c6b055f0e Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 5271686
#rb
#rnx

[CL 5282523 by Marc Audy in Dev-Framework branch]
2019-03-04 10:23:33 -05:00
Marc Audy
bcc53f72d7 Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 4898645
#rb
#rnx

[CL 4917956 by Marc Audy in Dev-Framework branch]
2019-02-05 23:17:27 -05:00
Marc Audy
ab108c215e Copying to Dev-Main @ CL# 4688301
#rb
#rnx

[CL 4688816 by Marc Audy in Main branch]
2019-01-08 11:38:48 -05:00
Ben Marsh
7598af0532 Update copyright notices to 2019.
#rb none
#lockdown Nick.Penwarden

[CL 4662404 by Ben Marsh in Main branch]
2018-12-14 13:41:00 -05:00
Ben Marsh
ea340d3fbf Copying //UE4/Fortnite-Staging to Dev-Main (//UE4/Dev-Main)
#rb none
#lockdown Nick.Penwarden

[CL 4567513 by Ben Marsh in Main branch]
2018-11-14 19:05:13 -05:00
Marc Audy
af90b7bcd4 Copying //UE4/Fortnite-Staging to Dev-Main (//UE4/Dev-Main) @ 4395008
#rb
#rnx
#lockdown Nick.Penwarden

[CL 4395058 by Marc Audy in Main branch]
2018-09-25 10:11:35 -04:00
Marc Audy
a2f3d9d448 (4.20.2) PR #4980: Fix: CrowdManagerClass property in UNavigationSystem is now correctly marked with "config" specifier. (Contributed by francoap)
#jira UE-62821
#rb Me
#rnx

[CL 4281254 by Marc Audy in Dev-Framework branch]
2018-08-13 16:17:02 -04:00
Marc Audy
952ca7ae49 Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 4166795
#rb
#rnx

[CL 4167744 by Marc Audy in Dev-Framework branch]
2018-06-27 17:19:13 -04:00