Commit Graph

257 Commits

Author SHA1 Message Date
yoan stamant
ce31754333 [GameplayDebugger] viewer can now provide view location and direction to the replicator so detaching camera from controller is supported properly for actor picking and culling tests
added view distance and angle to config and updated actor picking + culling
#rb maxime.mercier, mieszko.zielinski
#preflight 61a917f61a368fd603a10e4f

#ROBOMERGE-AUTHOR: yoan.stamant
#ROBOMERGE-SOURCE: CL 18355593 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0

[CL 18355643 by yoan stamant in ue5-release-engine-test branch]
2021-12-02 14:38:50 -05:00
yoan stamant
6962ee69a3 [GameplayDebugger] added MakeCircle overload that supports Thickness
#rb mikko.mononen
#preflight 61a4d7ad88439fccfe00e6f0

#ROBOMERGE-AUTHOR: yoan.stamant
#ROBOMERGE-SOURCE: CL 18309225 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0

[CL 18309280 by yoan stamant in ue5-release-engine-test branch]
2021-11-29 09:41:28 -05:00
maxime mercier
a3de6872fb Fix crash opening maps when gameplay debugger is enabled for editor world in editor settings
#jira none
#rnx
#preflight 619d5fb5aa4521f9e7a33611

#ROBOMERGE-AUTHOR: maxime.mercier
#ROBOMERGE-COMMAND: FnMain
#ROBOMERGE-SOURCE: CL 18276685 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0
#ROBOMERGE[bot1]: Main

[CL 18276707 by maxime mercier in ue5-release-engine-test branch]
2021-11-23 17:35:15 -05:00
yoan stamant
ef1f10466b Misc type conversion warning fixes
#rb maxime.mercier
#preflight 618d6d32c80d0ce51ae61965

#ROBOMERGE-AUTHOR: yoan.stamant
#ROBOMERGE-SOURCE: CL 18156659 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v889-18060218)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0

[CL 18156710 by yoan stamant in ue5-release-engine-test branch]
2021-11-11 14:57:15 -05:00
aurel cordonnier
a6e741e007 Merge from Release-Engine-Staging @ 17915896 to Release-Engine-Test
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035

[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-25 20:05:28 -04:00
yoan stamant
42299b520f [DebugDrawDelegateHelper] rollback of delegate unregistration issue previous fix and implemented a different approach for cases where proxy is not created:
In some code paths for loaded actors the call order might be different since primitive registration gets deferred (i.e. FRegisterComponentContext != nullptr).

Case 1 (normal flow): FRegisterComponentContext == nullptr
 > UPrimitiveComponent::CreateRenderState_Concurrent : calls CreateSceneProxy
 > RegisterDebugDrawDelegate
 > UnregisterDebugDrawDelegate  ==> works fine

Case 2 (deferred AddPrimitive): FRegisterComponentContext != nullptr
 > UPrimitiveComponent::CreateRenderState_Concurrent : defers CreateSceneProxy
 > RegisterDebugDrawDelegate (skip register since not init)
 > CreateSceneProxy
 > UnregisterDebugDrawDelegate  ==>  ensures in UnregisterDebugDrawDelegate

With this new version `CreateRenderState_Concurrent` calls `RequestRegisterDebugDrawDelegate` that will take care of registering the delegate immediately or mark it for deferred execution. An explicit call to `ProcessDeferredRegister` is then required from `CreateSceneProxy` to implement proper flow:

Case 2 (fixed) (deferred AddPrimitive + deferred Register): FRegisterComponentContext != nullptr
 > UPrimitiveComponent::CreateRenderState_Concurrent: defers CreateSceneProxy
 > RequestRegisterDebugDrawDelegate: defers RegisterDebugDrawDelegate
 > CreateSceneProxy: calls ProcessDeferredRegister & RegisterDebugDrawDelegate
 > UnregisterDebugDrawDelegate  ==> works fine

Bonus:
- New DebugDrawComponent abstract class that is now used to share common functionalities between existing debug related components. Takes care of DelegateHelper registration flow to render text on screen from different sources.
- FDebugDrawDelegateHelper::InitDelegateHelper is no longer virtual and derived classes requiring extra data from their associated scene proxy should set it up from their overriden CreateSceneProxy
- FDebugDrawDelegateHelper derived classes should not override RegisterDebugDrawDelegate/UnregisterDebugDrawDelegate to use their `DrawDebugLabels` method since this is already a virtual method that would get called from the base class.
- Fixed a few ViewFlag members in the SceneProxy so the DelegateHelper base class can behave as expected

#jira FORT-419154
#rb mieszko.zielinski
#preflight 61703f8766ed7f0001c0faf1

#ROBOMERGE-AUTHOR: yoan.stamant
#ROBOMERGE-COMMAND: FnMain
#ROBOMERGE-SOURCE: CL 17875336 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v883-17842818)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0
#ROBOMERGE[bot1]: Main

[CL 17875370 by yoan stamant in ue5-release-engine-test branch]
2021-10-20 13:23:33 -04:00
yoan stamant
2fa9d8e00f [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

#ROBOMERGE-AUTHOR: yoan.stamant
#ROBOMERGE-SOURCE: CL 17544171 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17544199 by yoan stamant in ue5-release-engine-test branch]
2021-09-16 16:50:03 -04:00
yoan stamant
ce092b2a5a [AI] Merging 17468937: GameplayDebugger: Support separate alpha on text
#preflight 6140d2073c7c670001621c73

#ROBOMERGE-AUTHOR: yoan.stamant
#ROBOMERGE-SOURCE: CL 17508455 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17508488 by yoan stamant in ue5-release-engine-test branch]
2021-09-14 15:21:43 -04:00
mikko mononen
c84f95ed32 GameplayDebugger: Fixed color on circle shape
#preflight 612497e98ff5540001386ff5

#ROBOMERGE-SOURCE: CL 17282179 via CL 17282211
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v858-17259218)

[CL 17282222 by mikko mononen in ue5-release-engine-test branch]
2021-08-24 03:48:05 -04:00
mikko mononen
229fbc9445 GameplayDebugger: Added arrow and circle shape.
#preflight 611cdca25e73720001cc817b

#ROBOMERGE-SOURCE: CL 17212936 via CL 17212982
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17212987 by mikko mononen in ue5-release-engine-test branch]
2021-08-18 06:37:19 -04:00
yoan stamant
b11aa112f7 [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 via CL 16672469
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v834-16658389)

[CL 16672473 by yoan stamant in ue5-release-engine-test branch]
2021-06-15 08:21:34 -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
Max Chen
9b73c0f152 Editor: Change to SLevelViewport
#jira UE-108941
#rb brooke.hubert

[CL 15520489 by Max Chen in ue5-main branch]
2021-02-24 16:03:09 -04:00
Yoan StAmant
ec8b03491b [GameplayDebugger] Extracted picking view point calculation to GetViewPoint exposed through GameplayDebuggerPlayerManager
#jira UE-105121
#review-15321294 @maxime.mercier
#rb maxime.mercier

[CL 15355736 by Yoan StAmant in ue5-main branch]
2021-02-08 07:46:38 -04:00
Zousar Shaker
3b4c8fc1c5 Automated wrapped object pointer upgrade for Engine + ShooterGame + ShooterGame referenced plugins
#rb none

[CL 15224650 by Zousar Shaker in ue5-main branch]
2021-01-27 17:40:25 -04:00
Marc Audy
bc88b73a29 Merge Release-Engine-Staging to Main @ CL# 15151250
Represents UE4/Main @ 15133763

[CL 15158774 by Marc Audy in ue5-main branch]
2021-01-21 16:22:06 -04:00
Marc Audy
bf80889353 UE5/Release-Engine-Staging to UE5/Main
This represents UE4/Main up to CL# 14958402

[CL 15028197 by Marc Audy in ue5-main branch]
2021-01-08 19:56:07 -04:00
Zousar Shaker
fc2ad21a5e Prototype Wrapped Object Pointers (ObjectHandle/ObjectPtr)
Call-site changes for non-scalar wrapped object pointer upgrades in Engine + Shootergame

#rb devin.doucette

[CL 14996467 by Zousar Shaker in ue5-main branch]
2021-01-05 19:16:25 -04:00
Marc Audy
ada7c144fa Merge //UE5/Release-Engine-Staging @14903491 to //UE5/Main
[CL 14906022 by Marc Audy in ue5-main branch]
2020-12-11 14:21:20 -04:00
Mieszko Zielinski
f99357086e A file missing from CL#14810194
#rb trivial

[CL 14812503 by Mieszko Zielinski in ue5-main branch]
2020-11-25 06:43:07 -04:00
Mieszko Zielinski
963c7e097e Made GameplayDebugger's availability in editor mode optional and cconfigured by per-user settings
I've also tabbified *.build.cs since I was modifying it anyway.

#review-14812433 @Mikko.Mononen, @Stephen.Holmes
#rb swarm
#rnx

[CL 14812500 by Mieszko Zielinski in ue5-main branch]
2020-11-25 06:42:17 -04:00
Mieszko Zielinski
0f0297d8db Fixed GameplayDebuggerCategoryReplicator unintentionally holding a reference to AActor being debugged which resulted in all sorts of undesired behaviors in editor mode (including fatal-level logs)..
#jira UE-103657
#review-14812437 @Mikko.Mononen, @Stephen.Holmes
#rb swarm
#rnx

[CL 14812499 by Mieszko Zielinski in ue5-main branch]
2020-11-25 06:42:02 -04:00
Mieszko Zielinski
a2abb8d078 Updated Fortnite's GameplayDebugger categories to not crash in pure-editor mode.
#review-14809849 @Maxime.Mercier, @Yoan.StAmant, @Guillaume.Guay
#rnx
#rb swarm

[CL 14810194 by Mieszko Zielinski in ue5-main branch]
2020-11-24 13:35:55 -04:00
Mieszko Zielinski
06d7f5395b Fixed a gameplay debugger tool crash on editor exit
#review-14809130 @Mikko.Mononen, @Stephen.Holmes
#rb swarm
#rnx

[CL 14809165 by Mieszko Zielinski in ue5-main branch]
2020-11-24 06:26:29 -04:00
Mieszko Zielinski
1fe6d03b53 GameplayDebugger CIS fixes
#rb trivial

[CL 14807508 by Mieszko Zielinski in ue5-main branch]
2020-11-23 15:48:43 -04:00