Commit Graph

104 Commits

Author SHA1 Message Date
louisphilippe seguin
ec0b7a7a4d Optimized the DormantDynamicActorsDestruction feature by not creating ConnectionDormancyNodes for cells the client never visited.
#rb Ryan.Gerleve, Brian.Bekich


#ROBOMERGE-SOURCE: CL 5794305 via CL 5794306 via CL 5794307 via CL 5794721

[CL 5794738 by louisphilippe seguin in Main branch]
2019-04-08 16:20:10 -04:00
louisphilippe seguin
f8e9623b7a -Now caching CullDistance and CullDistanceSquared in ConnectionReplicationActorInfo
-Removes sqrt call in critical path when RepGraph does actor culling.

#rb Ryan.Gerleve


#ROBOMERGE-SOURCE: CL 5764309 via CL 5764873

[CL 5764954 by louisphilippe seguin in Main branch]
2019-04-05 11:18:24 -04:00
louisphilippe seguin
26d8966c85 -The RepGraph forced a garbage collection when rebuilding a GridSpace. This will now be done at the end of frame instead of in the tick.
-This forced GC will only trigger if more than 100 cells were destroyed.

#rb Ryan.Gerleve


#ROBOMERGE-SOURCE: CL 5675634 via CL 5675635 via CL 5675636 via CL 5675637 via CL 5677067

[CL 5677098 by louisphilippe seguin in Main branch]
2019-04-01 19:27:39 -04:00
jon nabozny
c3e005d6c8 Fix CIS warning V595 in RepGraph from dereferencing an actor before null check.
[at]Ryan.Gerleve [at]Brian.Bekich
#jira UE-72167
#rb Ryan.Gerleve


#ROBOMERGE-SOURCE: CL 5675581 via CL 5675586 via CL 5675587 via CL 5675589 via CL 5676942

[CL 5676951 by jon nabozny in Main branch]
2019-04-01 19:09:10 -04:00
louisphilippe seguin
4fcc37c341 Added ability to limit the spatialization 2D grid to a specific region via SetBiasAndGridBounds
-When the optional grid bound is set we clamp player view locations to the closest grid in the bounded region instead of growing the grid list to his location.
-When adding actors we limit the available cells to coordinates inside the region.

#rb Ryan.Gerleve


#ROBOMERGE-SOURCE: CL 5649386 via CL 5651161

[CL 5651324 by louisphilippe seguin in Main branch]
2019-03-29 16:26:25 -04:00
jon nabozny
db986f4480 Prevent RepGraph from trying to replicate invalid actors.
[at]Ryan.Gerleve [at]Brian.Bekich
#rb Brian.Bekich


#ROBOMERGE-SOURCE: CL 5503884 via CL 5503888 via CL 5517394

[CL 5535625 by jon nabozny in Main branch]
2019-03-25 13:56:49 -04:00
louisphilippe seguin
981884ff1e -Split off Actor Discovery traffic into it's own bucket for csv performance reports
-Added RemoveChildNode function to ReplicationGraph
-Add ensureMsg to help track DataChannels crashing due to null actor ptrs in FORT-157380

#rb Ryan.Gerleve, Bart.Hawthorne


#ROBOMERGE-SOURCE: CL 5471101 via CL 5479098

[CL 5479188 by louisphilippe seguin in Main branch]
2019-03-20 13:45:09 -04:00
brian bekich
fbe3ed4517 Stop using a static variable to hold the time left until the next tick
#rnx
#rb ryan.gerleve


#ROBOMERGE-SOURCE: CL 5429374 via CL 5430340 via CL 5433503

[CL 5433572 by brian bekich in Main branch]
2019-03-18 13:29:22 -04:00
brian bekich
4045579a9a Additional tracking for dependent actors so they can always be cleaned up when removed from the rep graph
#rb ryan.gerleve, jon.nabozny


#ROBOMERGE-SOURCE: CL 5188824 via CL 5188825 via CL 5189139

[CL 5189155 by brian bekich in Main branch]
2019-02-25 18:28:14 -05:00
jon nabozny
3dc8dcbbe6 Try to catch edge cases for Adding and Removing channels in RepGraph when we may have the updated channels for the same actor.
[at]Ryan.Gerleve [at]Brian.Bekich [at]Bart.Hawthorne
#rb Brian.Bekich, Ryan.Gerleve


#ROBOMERGE-SOURCE: CL 5152849 via CL 5152867 via CL 5152876 via CL 5154257

[CL 5154320 by jon nabozny in Main branch]
2019-02-22 16:37:42 -05:00
louisphilippe seguin
8c487d02fa Include all traffic 'til the ActorSpawn was ackknowledged in the RepGraph's separate actor discovery budget
#rb ryan.gerleve


#ROBOMERGE-SOURCE: CL 5117170 via CL 5118098 via CL 5118141 via CL 5119327

[CL 5119549 by louisphilippe seguin in Main branch]
2019-02-21 19:31:45 -05:00
ryan gerleve
9f084638fa Clamp actor locations in UReplicationGraphNode_GridSpatialization2D::GetCellInfoForActor to the world maximum size in case we get bad values and try to allocate a massive grid later on in UReplicationGraphNode_GridSpatialization2D::GetGridNodesForActor.
[REVIEW]


#ROBOMERGE-SOURCE: CL 5086556 via CL 5086603 via CL 5086605 via CL 5086912

[CL 5089580 by ryan gerleve in Main branch]
2019-02-20 09:22:26 -05:00
louisphilippe seguin
8c86f4a568 Added optional budget in the RepGraph for data sent when a new ActorChannel is created on a connection. Can be used to improve actor discovery time when loading into a level with alot of dynamic actors packed into a single grid.
#rb ryan.gerleve


#ROBOMERGE-SOURCE: CL 5063181 via CL 5063878

[CL 5065895 by louisphilippe seguin in Main branch]
2019-02-19 14:36:46 -05:00
mike fricker
7dd059673d Creative: Prioritize fix for special case (from Josh May)
#ROBOMERGE-SOURCE: CL 5035570 via CL 5035571 via CL 5035572 via CL 5035592

[CL 5041876 by mike fricker in Main branch]
2019-02-18 13:58:56 -05:00
brian bekich
a57cb7dadd Prevent crash if an unexpected rpc is called while preparing a fast shared bunch
#rb ryan.gerleve


#ROBOMERGE-SOURCE: CL 4950012 via CL 4952135

[CL 4954330 by brian bekich in Main branch]
2019-02-08 18:59:35 -05:00
ryan gerleve
e82ce8e8c6 Quick improvements to RepGraph actor prioritization:
-Always prioritize connections' ViewTargets and OwningActors, since they're usually the most important and could get starved out by other actors.
-Increase the default MaxDistanceScaling from 30m to 600m, since 30m didn't have much effect.

#rb brian.bekich, david.ratti


#ROBOMERGE-SOURCE: CL 4921040 via CL 4921042 via CL 4921044 via CL 4921247 via CL 4926818

[CL 4927017 by ryan gerleve in Main branch]
2019-02-07 01:14:21 -05:00
jon nabozny
4e5107bf35 #CodeReview: jon.nabozny,jeff.williams
Merge conflict.
jon.nabozny, please merge this change by hand.
More info at https://robomerge.epicgames.net#FORTNITE

/src/robomerge_ue4_main_01/Engine/Plugins/Runtime/ReplicationGraph/Source/Public/ReplicationGraphTypes.h - merging //Fortnite/Dev-EngineMerge/Engine/Plugins/Runtime/ReplicationGraph/Source/Public/ReplicationGraphTypes.h#2


--------------------------------------
Update UE Networking related classes' memory tracking:
Use new FString::CountBytes instead of serializing the strings.
Add a few new macros that can be used to track individual sections of memory.
Add tracking to RepGraph.

[REVIEW] [at]Ryan.Gerleve [at]Bart.Hawthorne [at]Brian.Bekich [at]Peter.Engstrom [at]Mattias.Hornlund [at]LouisPhilippe.Seguin
#rb LouisPhilippe.Seguin


#ROBOMERGE-SOURCE: CL 4823093 via CL 4823100 via CL 4825388

[CL 4826387 by jon nabozny in Main branch]
2019-01-28 20:37:48 -05:00
jon nabozny
a3c2777e4c Change channel logging to be more information in RepGraph.
[at]Ryan.Gerleve [at]Brian.Bekich [at]Bart.Hawthorne
#rb Bart.Hawthorne

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: jon.nabozny
#ROBOMERGE-SOURCE: CL 4792115 via CL 4792118 via CL 4792120 via CL 4797597 via CL 4797805
#ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking)

[CL 4804144 by jon nabozny in Dev-Networking branch]
2019-01-24 16:00:45 -05:00
Brian Bekich
13958f6e19 Clear global actor info map from replication graph when initializing for world
Prevents leaving stale actors after a seamless travel

#jira UE-67252
#rb ryan.gerleve

[CL 4747184 by Brian Bekich in Dev-Networking branch]
2019-01-17 16:51:17 -05:00
cajoebestrotheray
07eafd2337 The ReplicationGraph DebugActor can now be overriden
PR #5439: Repgraph Debug Actor Suggestion (Contributed by cajoebestrotheray)


#jira UE-68269
#rb dave.ratti, ryan.gerleve

[CL 4743659 by LouisPhilippe Seguin in Dev-Networking branch]
2019-01-17 11:42:07 -05:00
ryan gerleve
7923eccbfe Disable dormant dynamic actor destruction in the replication graph. Was causing too much performance overhead.
#rb none
[FYI] bart.hawthorne, brian.bekich

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: ryan.gerleve
#ROBOMERGE-SOURCE: CL 4706627 via CL 4706647
#ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking)

[CL 4712213 by ryan gerleve in Dev-Networking branch]
2019-01-11 14:32:29 -05:00
James Hopkin
235137b0cc Merging //UE4/Dev-Main to Dev-Networking (//UE4/Dev-Networking)
Copying to Dev-Main @ CL# 4688301

#rb none

[CL 4707991 by James Hopkin in Dev-Networking branch]
2019-01-11 02:57:03 -05:00
ben marsh
2b46ba7b94 Update copyright notices to 2019.
#rb none
#lockdown Nick.Penwarden

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 4662404 in //UE4/Main/...
#ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking)

[CL 4662413 by ben marsh in Dev-Networking branch]
2018-12-14 13:44:01 -05:00
ryan gerleve
289a4fa159 Copying //UE4/Fortnite-Staging to Dev-Main (//UE4/Dev-Main)
#rb none
#lockdown Nick.Penwarden

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: ben.marsh
#ROBOMERGE-SOURCE: CL 4567513 in //UE4/Main/...
#ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking)

[CL 4573136 by ryan gerleve in Dev-Networking branch]
2018-11-16 14:01:06 -05:00
David Ratti
0091cab6a4 RepGraph fixes:
-Make ForceNetUpdate decrement AccumulatedPriority (more likely to replicate).
-Starvation scaling properly takes StarvationPriorityScale into account.
-UReplicationGraphNode_ActorList::NotifyRemoveNetworkActor properly sets/returns bRemovedSomething

#rb none

Reference:
https://udn.unrealengine.com/questions/457755/possible-replication-graph-bug.html

[CL 4566480 by David Ratti in Dev-Networking branch]
2018-11-14 15:51:03 -05:00