Commit Graph

188 Commits

Author SHA1 Message Date
yoan stamant
feda3b094e [NavigationSystem] replaced checks by warnings until the editor initializes a world properly with all its subsystems when loading from the command line.
#rb Patrick.Boutot

[CL 35638261 by yoan stamant in ue5-main branch]
2024-08-19 16:41:23 -04:00
yoan stamant
5e84714926 [NavigationSystem] prevent access to null component in an actor. Happened during undo operation in unittest from the Editor.
#jira UE-221816
#rb Aris.Theophanidis, Patrick.Boutot

[CL 35560435 by yoan stamant in ue5-main branch]
2024-08-15 08:21:59 -04:00
yoan stamant
3ee85d0283 [NavigationSystem] updating API and various part of the navigation framework to support registration of non UObject elements.
- Added FNavigationRelevantElement as the main structure used to provide required information. The struct is meant to remove the dependencies on INavRelevantInterface and UObject. It currently provides constructors dedicated to handle current components and other UObjects implementing the interface.

#rb Aris.Theophanidis

[CL 35531152 by yoan stamant in ue5-main branch]
2024-08-14 08:49:00 -04:00
devin doucette
0715918f04 Fixed missing calls to Super::AddReferencedObjects
#rb Steve.Robb
#rnx

[CL 35505106 by devin doucette in ue5-main branch]
2024-08-13 15:38:09 -04:00
frederic doll
b9ae65954d Change NavigationData::Raycast signature to know if the ray end is located on the ray corridor
#rb Aris.Theophanidis

[CL 35438869 by frederic doll in ue5-main branch]
2024-08-09 18:41:09 -04:00
aris theophanidis
da1f628c5c [Navmesh] Avoid registering link proxy with invalid id.
#rb Yoan.StAmant
#jira UE-213923

[CL 34908052 by aris theophanidis in ue5-main branch]
2024-07-18 14:12:57 -04:00
aris theophanidis
9d914b08c0 [NavLink Generation] Allow generated navlinks to be discovered and handled by pathfollow in a similar way to custom links.
Addition of UGeneratedNavLinksProxy class
Addition of properties to FNavLinkGenerationJumpDownConfig to configure the link handler

#rb Mieszko.Zielinski
#jira UE-213923

[CL 34843997 by aris theophanidis in ue5-main branch]
2024-07-16 12:28:09 -04:00
yoan stamant
797b16e72a [AINavigation] Converted ENavigationOptionFlag and ENavigationDirtyFlag to enum classes
#rb Mieszko.Zielinski

[CL 34704470 by yoan stamant in ue5-main branch]
2024-06-27 07:18:41 -04:00
yoan stamant
9d5f9f11b1 Moved NavigationDirtyArea to a dedicated file to break some header dependencies
#rb Mieszko.Zielinski

[CL 34674061 by yoan stamant in ue5-main branch]
2024-06-26 09:45:39 -04:00
yoan stamant
05babfc50a [NavigationSystem] deprecated methods/properties cleanup
#rb Mieszko.Zielinski

[CL 34671795 by yoan stamant in ue5-main branch]
2024-06-26 07:24:40 -04:00
kevin macaulayvacher
276d09f6df Remove all simple usage of REN_ForceNoResetLoaders from the codebase since the flag has been deprecated and currently does nothing. Simple in this case is direct use of the flag with no conditional logic. More complex uses were removed in another change.
#rnx
#rb Francis.Hurteau

[CL 34424068 by kevin macaulayvacher in ue5-main branch]
2024-06-17 11:55:02 -04:00
ben woodhouse
2ea61ce0c6 Switch to CSV_PROFILER_STATS instead of CSV_PROFILER for various profiling subsystems. This allows them to be compiled out when CSV_PROFILER_MINIMAL is defined.
As part of this change we also promote dynamic resolution and IO/PackageQueueDepth stats to Minimal since they're important for high level performance reporting.
Also fix up a few places that were redundantly using #if CSV_PROFILER around CSV macros.

#rb mickael.gilabert

[CL 34386798 by ben woodhouse in ue5-main branch]
2024-06-14 18:16:47 -04:00
robert seiver
af510ef4ca Fixed a bug with a loop variable
[CL 34041976 by robert seiver in ue5-main branch]
2024-05-31 16:01:46 -04:00
robert seiver
c26dedd143 When in the editor with a World Partitioned map, only build the nav mesh inside of loaded areas
#rb Aris.Theophanidis

[CL 34040972 by robert seiver in ue5-main branch]
2024-05-31 15:46:06 -04:00
frederic doll
17e15a079b Extract loop that notify the navigation data about which invokers are currently active
#rb Aris.Theophanidis

[CL 33829475 by frederic doll in ue5-main branch]
2024-05-22 10:42:58 -04:00
frederic doll
8ed3931ea8 Expose FRecastGeometryExport struct. This allows us to :
- share the struct with other navigation data generators
- use it directly where needed instead of using the RecastNavMeshGenerator (e.g. NagivationSystem, NavigationDataHandler, etc.)
#rb Aris.Theophanidis
[FYI] mieszko.zielinski

[CL 33807192 by frederic doll in ue5-main branch]
2024-05-21 16:01:41 -04:00
aris theophanidis
79796191a6 [NavMesh] NavLink generation improvements:
Refactor to keep solidHF and compactHF for the lifetime of FRecastTileGenerator
Allowed the sliced generator to build links
Fix issue with missing solidHF and compactHF when building links
Added experimental link builder configurations to RecastNavmesh
Increase heightfield border size when building links
Fix missing input edges on tile borders when generating links
Changed ARecastNavMesh "Draw Failed NavLinks" debug name to Draw Failed and Valid Links"
Added profile tags inside link generation
Small navlink geneneration debug display improvements
#jira UE-213923
#rb Maxime.Mercier

[CL 33544704 by aris theophanidis in ue5-main branch]
2024-05-09 09:45:57 -04:00
aris theophanidis
0dc538920e [NavMesh] Navlink generation first pass (experimental).
When enabled, generates simple links within navmesh tiles.
Added debug display showing trajectory and trajectory validation.
#jira UE-213923
#rb mikko.mononen

[CL 33427009 by aris theophanidis in ue5-main branch]
2024-05-03 11:17:46 -04:00
yoan stamant
73e3be5b16 Added unsafe type cast as warnings in AI related plugins/modules: StateTree, Mass, SmartObject. NavigationSystem, and ZoneGraph (partial)
#rb Mieszko.Zielinski, mikko.mononen

[CL 32398227 by yoan stamant in ue5-main branch]
2024-03-21 09:44:11 -04:00
yoan stamant
9722c0198a [Navigation] Replaced custom NavLink static registration queue by a new world subsystem that will also store NavRelevantObject that are not AActor/UActorComponent based.
This change allow new NavigationSystem created after initial map load (e.g. ANavSystemConfigOverride) to properly recreate its custom nav link mappings and octree.
#rb Aris.Theophanidis, mikko.mononen, robert.seiver

[CL 31733116 by yoan stamant in ue5-main branch]
2024-02-22 15:44:43 -05:00
steve robb
f8d47335a4 Replaced RemoveAt(N, 1, EAllowShrinking::*) with RemoveAt(N, EAllowShrinking::*).
[CL 31626444 by steve robb in ue5-main branch]
2024-02-19 16:51:58 -05:00
aris theophanidis
33581628a2 Add custom link owner's name to link ID warning to allow identifying the problematic actor.
#rb Yoan.StAmant

[CL 31211962 by aris theophanidis in ue5-main branch]
2024-02-06 08:57:17 -05:00
aris theophanidis
9984d70711 OnNavigationBoundsUpdated, make a removal request if the bounds are invalid.
This avoids having invalid RegisteredNavBounds when undoing the addtion of a NavMeshBoundVolume.
#jira UE-204476
#rb Yoan.StAmant

[CL 31012256 by aris theophanidis in ue5-main branch]
2024-01-30 13:01:23 -05:00
steve robb
f029468598 Fixed up a lot of bool-taking container resize functions to take EAllowShrinking instead.
[CL 30729174 by steve robb in ue5-main branch]
2024-01-19 16:41:35 -05:00
bob tellez
be86723155 #UE Lower verbosity of a message about a full queue to a warning and add more info to it so it is actionable
[CL 30679453 by bob tellez in ue5-main branch]
2024-01-18 03:27:28 -05:00