Commit Graph

298 Commits

Author SHA1 Message Date
Yoan StAmant
166f970337 [DebugDrawDelegate]
Update registration flow since CreateRenderState_Concurrent can't be used to register our delegate since it needs to be initialized first (CreateSceneProxy) and in some code paths for loaded actors the call order might be different since primitive registration gets deferred (i.e. FRegisterComponentContext != nullptr).
In that case initialization won't called and an ensure will fire in UnregisterDebugDrawDelegate since registration failed (was not initialized).
Case 1: FRegisterComponentContext == nullptr  ==> Super::CreateRenderState_Concurrent + sync CreateSceneProxy (init) + RegisterDebugDrawDelegate ==> works fine
Case 2: FRegisterComponentContext != nullptr  ==> Super::CreateRenderState_Concurrent + deferred CreateSceneProxy + RegisterDebugDrawDelegate (skipped since not init) + CreateSceneProxy ==> ensures in UnregisterDebugDrawDelegate

Bonus:
- some code analysis fixes
- removed some 'CoreMinimal.h' includes
- exported log category 'LogVisual'
- fixed some uninitialized properties (FNavTestDebugDrawDelegateHelper, UNavMeshRenderingComponent, FNavMeshSceneProxyData)
- fixed some methods hiding non-virtual from base class (GetAllocatedSize)
- fixed FGameplayDebuggerCompositeSceneProxy::GetMemoryFootprint that was not considering base class allocations

#rnx
#jira UE-125097
#preflight 614362684778fa00016a8cad
#rb mieszko.zielinski

[CL 17544171 by Yoan StAmant in ue5-main branch]
2021-09-16 16:47:25 -04:00
Aris Theophanidis
01ea7bd18d [Navmesh] Add comment on borderSize computation
#rb Julien.Marchand
#jira none

[CL 17538795 by Aris Theophanidis in ue5-main branch]
2021-09-16 10:39:06 -04:00
aurel cordonnier
e3f7878676 Merge from Release-Engine-Test @ 17462327 to UE5/Main
This represents UE4/Main @17430120 and Dev-PerfTest @17437669

[CL 17463546 by aurel cordonnier in ue5-main branch]
2021-09-08 16:42:26 -04:00
error454
7047b224c4 PR #8362: Prevent compiler error when using WITH_RECAST (Contributed by error454)
#review-17418141 self
#preflight skip

[CL 17418140 by error454 in ue5-main branch]
2021-09-03 05:23:11 -04:00
aris theophanidis
2c5b93abc4 Fix typo in dev doc
#rb trivial
#preflight skip


#ROBOMERGE-SOURCE: CL 17407478
#ROBOMERGE-BOT: (v865-17346139)

[CL 17415557 by aris theophanidis in ue5-main branch]
2021-09-03 01:02:03 -04:00
Andrew Davidson
f8eda1fd0b LWC support for FQuat and FTransform
Merge Dev-LargeWorldCoordinates @ 17289670

#preflight 6125fb6925057900014f2cd6

[CL 17300515 by Andrew Davidson in ue5-main branch]
2021-08-25 06:25:38 -04:00
cedric caillaud
b25aa66dd9 Chaos : Change Implicit Trimesh to use Float instead of double even in LWC mode
this reduce the memory footprint for vertices. the internal BVH needs more work

#rb andrew.davidson
#fyi chris.caulfield, benn.gallagher
#jira UE-119695

[CL 17056695 by cedric caillaud in ue5-main branch]
2021-08-04 14:48:10 -04:00
dmytro vovk
d3aeb154ff Fixed SSE Math double precision issues
#jira none
#rb Zak.Middleton

[CL 17033934 by dmytro vovk in ue5-main branch]
2021-08-03 13:39:19 -04:00
yoan stamant
af88a23dcd [FDebugDrawDelegateHelper] Allow calls to method InitDelegateHelper from Parallel For called from game thread (i.e. IsInParallelGameThread() || IsInGameThread() )
Removed previous hack added in UEQSRenderingComponent  and fixed some typos in method names.
#rb mikko.mononen mieszko.zielinski
#preflight 60c887272da7840001313475


#ROBOMERGE-SOURCE: CL 16672461
#ROBOMERGE-BOT: (v834-16658389)

[CL 16672469 by yoan stamant in ue5-main branch]
2021-06-15 08:21:00 -04:00
aurel cordonnier
e0ad4e25df Merge from Release-Engine-Test @ 16624776 to UE5/Main
This represents UE4/Main @ 16579691 and Dev-PerfTest @ 16579576

[CL 16625248 by aurel cordonnier in ue5-main branch]
2021-06-10 13:13:24 -04:00
aris theophanidis
b0b87c708c [Navigation Navmesh] Switch to using bSortNavigationAreasByCost enabled by default
[REVIEW] [at]Mieszko.Zielinski
#rb Mieszko.Zielinski
#preflight 60c205a0b1a4a30001160552


#ROBOMERGE-SOURCE: CL 16622534
#ROBOMERGE-BOT: (v830-16605563)

[CL 16622548 by aris theophanidis in ue5-main branch]
2021-06-10 09:46:06 -04:00
aris theophanidis
23c6455a5a Crash fix in FRecastNavMeshGenerator::OnNavigationBoundsChanged()
[at]Yoan.StAmant
#rb Yoan.StAmant
#jira UE-112226
#preflight 60b7f09d4d507d0001c3bd2f


#ROBOMERGE-SOURCE: CL 16541450
#ROBOMERGE-BOT: (v828-16531559)

[CL 16541452 by aris theophanidis in ue5-main branch]
2021-06-02 19:07:11 -04:00
aurel cordonnier
43fa62fcd8 Merge from Release-Engine-Test @ 16487383 to UE5/Main
This represents UE4/Main @ 16445039 and Dev-PerfTest @ 16444526

[CL 16488106 by aurel cordonnier in ue5-main branch]
2021-05-27 13:40:37 -04:00
ben zeigler
6c301cae85 #jira UE-2848 Blueprint function category and display name cleanup pass:
Add spaces to overridden display names, it doesn't add them automatically
Move some functions out of Utilities into their own categories like Transformation, this improves the UX for the node picker and Utilities is for Core functionality
Simplify and combine some redundant categories
Clean up functions like IsValid to specify the type and attempt to unify case for math functions
#rb ben.hoffman

[CL 16355176 by ben zeigler in ue5-main branch]
2021-05-17 13:26:33 -04:00
Andrew Davidson
3ddc3a4da3 Merge up from //UE5/Dev-LargeWorldCoordinates
#rb none

[CL 16211417 by Andrew Davidson in ue5-main branch]
2021-05-05 15:07:25 -04:00
aurel cordonnier
50944fd712 Merge UE5/RES @ 16162155 to UE5/Main
This represents UE4/Main @ 16130047 and Dev-PerfTest @ 16126156

[CL 16163576 by aurel cordonnier in ue5-main branch]
2021-04-29 19:32:06 -04:00
Steve Robb
bfddf3e267 TMethodPtr<U, ...> and TConstMethodPtr<U, ...> template aliases added to delegates to replace the T*Delegate_Const<U, ...>::FMethodPtr types.
#rb robert.manuszewski
#jira none

[CL 16092754 by Steve Robb in ue5-main branch]
2021-04-22 09:49:28 -04:00
mark lintott
bd61859350 #jira 112822
#rb johan.torp
Removal of UE4 references in Archive.h

[CL 16002350 by mark lintott in ue5-main branch]
2021-04-14 05:14:13 -04:00
mark lintott
11a12136ce #jira UE-111647
#rb johan.torp
GetLinkerUE4Version renamed to GetLinkerUEVersion

#ROBOMERGE-SOURCE: CL 15859222 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15859586 by mark lintott in ue5-main branch]
2021-03-30 06:44:49 -04:00
Marc Audy
0cbbc781ca Merge UE5/Release-Engine-Staging @ 15740152 to UE5/Main
This represents UE4/Main @ 15709114

[CL 15740605 by Marc Audy in ue5-main branch]
2021-03-18 15:20:03 -04:00
Tim Smith
a2237e050d LiveCoding Re-instancing
LIMITATIONS:

1) Re-instancing will only update UClass instance data.
2) Adding and removing properties should only be done towards the end of a class or structure and can not be followed by complex data types.
3) Adding and removing properties from a base class should not be done if a derived class contains complex data types.

KNOWN ISSUES:

1) Changes to enumerations and structures will not be reflected in existing blueprints.  However, adding new nodes to the blueprint will show the updated enumeration or structure.
2) If a class contains an enumeration or structure as a member, the class will not be re-instanced if enumeration or structure is changed.

CHANGES:

1) LiveCodingServer
1a) Modified to always execute certain static instances during load.
1b) Modified to exclude the _Statics static structures to avoid patching to old copies.

2) Added support for LiveCoding reinstancing
2a) Refactored deferred registration system for UClass, UEnum, and UScriptStruct to use a common system that works for normal game, hot reload and live coding.
2b) Type specific version check data is possible (i.e. enum doesn't have a size)
2c) Single registration static for UClass
2d) Single registration class for all types that is just a blind forward to API.
2e) Static and dynamic registrations use different API entry points to avoid having overloaded argument lists that just apply to one or the other.
2f) Shims for older API

3) New common "Reload" system to avoid using HotReload code.
3a) Support common delegates regardless of who is reloading/reinstancing.
3b) Re-instancing code moved from HotReload to Kismet2 (where the bulk of the re-instance code already existed).
3c) Modified PyWrapper to use new helper class instead of depending on HotRelaod
3d) Added WITH_RELOAD which is defined if HotReload or LiveCoding is enabled.
3e) Modifed existing code to use new #define and delegates.

Robert did the review on the changes covered by Part 2.  Remaining changes are all straightforward.

#rb robert.manuszewski
#jira UE-74493

[CL 15736777 by Tim Smith in ue5-main branch]
2021-03-18 08:13:59 -04:00
Devin Doucette
6a055f3b41 Fixed dependencies on the DerivedDataCache module to be include-only when appropriate
#rb Zousar.Shaker

[CL 15681304 by Devin Doucette in ue5-main branch]
2021-03-11 17:27:38 -04:00
Aris Theophanidis
6d430aebf9 [Navigation] Addition of ARecastNavMesh::FindEdges() method to collect navmesh wall edges
#review @Mikko.Mononen
#rb Mikko.Mononen
#jira UE-106848

[CL 15518116 by Aris Theophanidis in ue5-main branch]
2021-02-24 14:46:29 -04:00
danny couture
538d1277ee Add missing DDC debug context in NavCollision
Use the Super default implementation instead of copy pasting the same string everywhere

#rb Devin.Doucette

[CL 15513109 by danny couture in ue5-main branch]
2021-02-24 07:34:50 -04:00
Marc Audy
9753392e2b Merge UE5/RES CL# 15462083 to UE5/Main
This represents UE4/Main @ 15414221

[CL 15463811 by Marc Audy in ue5-main branch]
2021-02-18 18:13:28 -04:00