Commit Graph

78 Commits

Author SHA1 Message Date
Chris Gagnon
930e33cb48 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) for 4.23 From CL 6837861
#rb none

[CL 6838042 by Chris Gagnon in Main branch]
2019-06-04 15:42:48 -04:00
Marc Audy
cf48c338c5 Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 6834564
#rb
#rnx
#lockdown Michael.Noland

[CL 6834940 by Marc Audy in Dev-Framework branch]
2019-06-04 09:58:36 -04:00
Mieszko Zielinski
564a8d1f3e Added a dedicated warning for when we attempt to creat a dtNavMesh instance with maxTiles == 0.
Also, made sure we release the faultu dtNavMesh instance if we're not going to use it.

#jira UE-71027
#review-6676106 @Yoan.StAmant
#rb Yoan.StAmant

[CL 6676722 by Mieszko Zielinski in Dev-Framework branch]
2019-05-30 12:22:17 -04:00
Mieszko Zielinski
31fa3c7421 Made sure we mark all the navigable space dirty after recreating dtNavMesh instance due to mismatching navmesh properties.
#jira UE-65963
#rb none

[CL 6675381 by Mieszko Zielinski in Dev-Framework branch]
2019-05-30 08:42:12 -04:00
Mieszko Zielinski
cd19b057a7 Fixed a bug in ARecastNavMesh::GetRandomReachablePointInRadius that resulted in erronous behavior for big(ish) Radius values.
The bug resulted from us using a strange extent ({Radius,Radius,Radius}) when projecting the initial location to navmesh. I've used a lot more reasonable DefaultQueryExtent for this purpose with Z being set to BIG_NUMBER. When a big Radius value was used the underlying recast code was expected to query a lot of polygons, but there's a hard limit of 128 polygons to process in multiple places in Recast lib (for performance reasons). These two facts combined resulted in finding awkward query starting point when using large Radius. The new approach first projects the query origin 'down' taking advantage of the assumption that the querier location is (more or less) on navmesh, since the whole query is about reachable locations.

#jira UE-66058
#review-6665296 @Yoan.StAmant
#rb Yoan.StAmant

[CL 6674755 by Mieszko Zielinski in Dev-Framework branch]
2019-05-30 03:11:13 -04:00
Mieszko Zielinski
167345c8eb Fixed NavModifierVolume not updating navmesh upon undoing changes in the editor
#jira UE-57115
#rb none

[CL 6663464 by Mieszko Zielinski in Dev-Framework branch]
2019-05-29 09:38:42 -04:00
Mieszko Zielinski
61f3b0d4d3 Added logging to the two cases that can make RecastNavMeshGenerator recreate the dtNavMesh instance (dumping the serialized one)
#rb none
#jira none

[CL 6651556 by Mieszko Zielinski in Dev-Framework branch]
2019-05-28 05:40:31 -04:00
Mieszko Zielinski
853203af9a Re-registering NavAreas modified in the editor to support better debugging via NavigationTestingActors (for example)
#jira UE-69074
#rb none

[CL 6650205 by Mieszko Zielinski in Dev-Framework branch]
2019-05-27 10:38:39 -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
Mieszko Zielinski
a1708e0630 Made NavModifierComponent work properly even if its owner's root component was marked as nav-irrelevant #UE4
While at it had to mess around with RegastNavMeshGenerator's initialization - the old way in some cases resulted in overriding once configured properties or needless dtNavMesh instance recreation.
In the process I've removed the Generator->Init() call from ARecastNavMesh::ConditionalConstructGenerator since now we call Init as part of generator's construction.

#jira UE-74448
#review-6533131 Yoan.StAmant
#rb Yoan.StAmant

[CL 6604191 by Mieszko Zielinski in Dev-Framework branch]
2019-05-22 06:50:15 -04:00
Volbard
0b91bff36c PR #5813: Adding concept of supported nav agents to Smart Links (Contributed by Volbard)
Added virtual method INavLinkCustomInterface::GetSupportedAgents to allow derived classes to provide their supported agents when a NavigationLink is created by INavLinkCustomInterface::GetModifier.
Added property SupportedAgents to NavLinkCustomComponent and override GetSupportedAgents to forward the filter to the NavigationLink.

#jira UE-74364
#review-6523922 @mieszko.zielinski
#rb mieszko.zielinski

[CL 6533612 by Yoan StAmant in Dev-Framework branch]
2019-05-16 08:23:23 -04:00
Ben Zeigler
e15c6d6e7d Fix AI module load order issue. The AIModule is implicitly loaded early in editor startup from DetailCustomizations, but if you break that dependency link the AI module does not get loaded until PreDefault, which is way after when the Pawn CDO gets initialized.
I was able to fix a NavigationSystemBase case because it only needed a soft ref, but the Pawn needs a hard ref to AIController so AIController must be loaded before Pawn's CDO gets initialized
The AISupportModule now has a hard reference to an AI module symbol, this causes that module to get loaded very early, but the StarutpModule happens at the same time it used to, fairly late in startup
#codereview mieszko.zielinski
#rb gil.gribb

[CL 6317743 by Ben Zeigler in Dev-Framework branch]
2019-05-06 12:16:22 -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
502f469036 Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 5503639
#rb
#rnx

[CL 5504188 by Marc Audy in Dev-Framework branch]
2019-03-22 14:59:27 -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
Ben Zeigler
1ce734caf6 Set up ReferenceNames for most runtime FGCObject classes, as these now properly show up in obj refs
#rb marc.audy

[CL 5365250 by Ben Zeigler in Dev-Framework branch]
2019-03-11 19:48:28 -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
Chris Gagnon
80918bea22 Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 5110714 by Chris Gagnon in Dev-Editor branch]
2019-02-21 13:05:30 -05:00
Brandon Schaefer
e330479d73 Symbols are now hidden by default for Linux/Mac
Add support for MODULE_VTABLE for exposing the VTable (Also optionally if enabled RTTI) info for a given type for clang (Linux/Mac)

Rename command line arg bHideSymbolsByDefault to bPublicSymbolsByDefault, as well as now add support for setting this change the BuildConfiguration.xml file

Started from Github PR #3351 though a different way to go about it

#jira UE-42635
#rb Arciel.Rekman, Steve.Robb, Ben.Marsh, Michael.Trepka
#fyi Chris.Bunner, Chris.Gagnon

[CL 4923631 by Brandon Schaefer in Dev-Editor branch]
2019-02-06 14:44:31 -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
Chris Gagnon
a48e767b94 Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4835066 by Chris Gagnon in Dev-Editor branch]
2019-01-29 16:15:19 -05:00
Robert Manuszewski
559a25e622 Copying //UE4/Dev-Core @ 4771952 to Dev-Main (//UE4/Dev-Main)
#rb none
#lockdown Nick.Penwarden

[CL 4772220 by Robert Manuszewski in Main branch]
2019-01-22 15:45:34 -05:00
Chris Gagnon
0dbe1f7fb2 Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4766091 by Chris Gagnon in Dev-Editor branch]
2019-01-21 17:47:02 -05:00
Robert Manuszewski
cfa01c09c7 Merging //UE4/Dev-Main to Dev-Core (//UE4/Dev-Core)
#rb none

[CL 4731457 by Robert Manuszewski in Dev-Core branch]
2019-01-16 04:23:12 -05:00