Commit Graph

22 Commits

Author SHA1 Message Date
Ryan Gerleve
35e095a9d8 Copying //UE4/Dev-Networking @ CL 11201841 to Dev-Main (//UE4/Dev-Main)
#rb none
#rnx

[CL 11202190 by Ryan Gerleve in Main branch]
2020-01-31 18:46:22 -05:00
peter engstrom
83c804462c Updating copyright for Engine Runtime.
#rnx
#rb none

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900 via CL 10870549
#ROBOMERGE-BOT: NETWORKING (Main -> Dev-Networking) (v624-10872983)

[CL 10874720 by peter engstrom in Dev-Networking branch]
2020-01-03 09:45:29 -05:00
ryan durand
0f0464a30e Updating copyright for Engine Runtime.
#rnx
#rb none


#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870549 by ryan durand in Main branch]
2019-12-26 14:45:42 -05:00
jake leonard
7fb63acb71 Fixing the GetLocalHostAddr for Android such that it does not give priority to loopback addresses on Nougat based Android OS versions.
#JIRA: UE-84885
#lockdown cristina.riveron
#rb: ryan.gerleve

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: jake.leonard
#ROBOMERGE-SOURCE: CL 10863970 in //UE4/Release-4.24/... via CL 10864014
#ROBOMERGE-BOT: NETWORKING (Main -> Dev-Networking) (v610-10636431)

[CL 10868277 by jake leonard in Dev-Networking branch]
2019-12-21 16:07:59 -05:00
jake leonard
3917523813 Fixing the GetLocalHostAddr for Android such that it does not give priority to loopback addresses on Nougat based Android OS versions.
#JIRA: UE-84885
#lockdown cristina.riveron
#rb: ryan.gerleve

#ROBOMERGE-SOURCE: CL 10863970 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v610-10636431)

[CL 10864014 by jake leonard in Main branch]
2019-12-20 16:18:23 -05:00
peter engstrom
37d2264796 Deprecating ARRAY_COUNT and changing it to UE_ARRAY_COUNT.
Replicated from CL# 7924370.

#rb none

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 9279060 via CL 9279063 via CL 9279836
#ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking) (v455-9298202)

[CL 9359921 by peter engstrom in Dev-Networking branch]
2019-10-02 05:35:18 -04:00
steve robb
14cab21e0c Deprecating ARRAY_COUNT and changing it to UE_ARRAY_COUNT.
Replicated from CL# 7924370.

#rb none


#ROBOMERGE-OWNER: steve.robb
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 9279060 via CL 9279063
#ROBOMERGE-BOT: (v443-9013191)

[CL 9279836 by steve robb in Main branch]
2019-09-28 08:19:35 -04:00
Jake Leonard
fb473a7678 Updates to IPAddress structures that allow for querying protocol types. Adds errorcode tracking to GAI requests.
Updates the SocketSubsystem to better support multiple protocol types and handling platforms that are locked to a specific protocol as well. Also removes the enum usage in the sockets/subsystem classes which reverts and better implements 4504445.

#JIRA: UE-68869, UENET-911, UENET-891
#rb: ryan.gerleve

[CL 4849963 by Jake Leonard in Dev-Networking branch]
2019-01-30 18:48:01 -05:00
Jake Leonard
3379b45d4e Fix Android GetLocalHostAddr from stomping on address information when we're determining best address usage. Also prevents the invalid ALL|V4MAPPED flag from being attached to GAI queries.
#JIRA: UE-68731, UE-68732
#rb: jon.nabozny

[CL 4757233 by Jake Leonard in Dev-Networking branch]
2019-01-18 18:24:28 -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
Jake Leonard
8ff18ce07f Fix GAI flags to make sure they are valid for the platforms that don't allow certain flags to be explicitly specified.
#Jira UE-63744
#rb: ryan.gerleve
#fyi: bart.hawthorne, ryan.gerleve

[CL 4349781 by Jake Leonard in Dev-Networking branch]
2018-09-06 20:33:53 -04:00
Jake Leonard
d99d866fa3 Fixes for compilation and static analysis
#Jira: none
#rb: none

[CL 4225020 by Jake Leonard in Dev-Networking branch]
2018-07-20 11:36:48 -04:00
Jake Leonard
3fe1899505 Merging IPv6 and IPv4 code together. Exposing a getaddrinfo method.
#Jira UENET-885, UENET-886
#rb: ryan.gerleve, brian.bekich

[CL 4224001 by Jake Leonard in Dev-Networking branch]
2018-07-19 18:22:52 -04:00
Ryan Gerleve
545b303834 Copying //UE4/Dev-Networking to //UE4/Dev-Main (Source: //UE4/Dev-Networking @ 4051526)
#lockdown Nick.Penwarden
#rb none

============================
  MAJOR FEATURES & CHANGES
============================

Change 3809757 by Jon.Nabozny

	Fixup BuildPhysx to only set up HTML5 when needed.

Change 3812325 by Jake.Leonard

	Fix keyed debug messages from getting scaled to 0 and thus not appearing at all. This appears to be a bug in main as well. Only -1 keyed messages (which are handled differently) will display anything at all as the scale application was removed.

	#Jira UE-53579

Change 3828032 by Jon.Nabozny

	Make sure the State is set before triggering delegates in FLwsWebSocket.

Change 3837391 by John.Barrett

	NetcodeUnitTest updates for better CIS/automation support.

Change 3837392 by John.Barrett

	Fixed performance issue with processing piped output for large numbers of unit tests, and fixed unit test windows overlapping - plus other bugfixes.

Change 3837397 by John.Barrett

	Moved a unit test to the 'Obsolete' folder.

Change 3837476 by John.Barrett

	Reduced unwanted OSS-null logspam.

Change 3844506 by Jake.Leonard

	Implementing missing steam leaderboard implementations. Also streamlines and fixes the friends leaderboard too.

	#Jira UE-53474,UE-53475,UE-53476

Change 3844803 by Jake.Leonard

	Fixing the Steam Leaderboard to allow for overwrite instead of increment.

	Please see Jira for recent comments

	#Jira UE-24791

Change 3844829 by Jake.Leonard

	Does the following:

	* Add message on the screen while the presence test is running to let users know that the test is still running.
	* Remove the FUniqueNetIDString dependencies in the test
	* Fix the Steam Rich Presence from having to do an unnecessary cast

	#Jira UE-53066,UE-54177

Change 3851997 by Jake.Leonard

	Remove one of the double steam p2p dump prints. Now the socket subsystem is the only one that prints, which will cover more cases anyways and limits the potential of duplicate prints.

	Also changes the dump interval to 10s from 3s.

	#Jira: UE-53763

Change 3882307 by John.Barrett

	Fixed packet flooding protection, and handling of packets with errors, so that they don't delay further packet processing.
	When there's an error receiving a packet, make sure the wrong/previous-packets address isn't used for logging.

Change 3882311 by John.Barrett

	Restricted socket recv code from CL 3026398/3209824 to TCP, as with UDP it prevented telling the difference between the socket having no data to receive, and receiving a 0-length UDP packet.

	This is important for protecting against DoS attacks.

Change 3894785 by Jake.Leonard

	Fix replays not ending properly when the user goes to end their PIE instance.

	#Jira UE-54488

Change 3902627 by Jake.Leonard

	Fix the demo time values being incorrect if our delta would push us to the end of the replay. Since we're done, we early out of the functions before we have a chance to update the DemoCurrentTime variable. This causes issues with UI elements as it looks like the replay is not over but it actually is.

	#Jira UE-54483

Change 3902632 by Jake.Leonard

	Fix voice issues on seamless travel for NullOSS

	#Jira UE-54899

Change 3904775 by Jake.Leonard

	Properly grab the correct world context (we were sometimes grabbing the editor instead, when we wanted the PIE world). These changes will allow us to reliably end the demos. Improves the fix in 3894785.

	#Jira UE-54488

Change 3968022 by Ryan.Gerleve

	PR #4538: Guarantee Return Value of 0 When GetPortNo() Fails (Contributed by XenonicDev)


Change 3994505 by Jake.Leonard

	Fix some shootergame minor bugs:

	1. If there's no map selector UI option, just search for all maps. This fixes the only seeing Sanctuary bug (first option in the maplist)
	2. Always make the server push gametype (which is just TeamDeathmatch by default)

	#Jira none

Change 3999511 by Jake.Leonard

	FArchive serializer for FUniqueNetIdSteam

	#Jira none

Change 4014550 by Jake.Leonard

	Fix Steam Dedicated Server from linking steamclient dlls, which should not be necessary.

	This fix introduces a new launch argument (-force_steamclient_link) that can be used to force the steamclient link anyways for licensees who might have required this under extreme circumstances.

	#Jira UE-55183

Change 4017165 by Jake.Leonard

	Modification of the leaderboard test interface to add more tests as well as arbitrary rank fetches.

	Command is "online test leaderboards [optional arbitrary user id for lookup]"

	#Jira UE-53533

Change 4017215 by Jake.Leonard

	Fix MULTIHOME returning the incorrect ip address on Linux and Android

	#Jira UE-57463

Change 4024116 by Ryan.Gerleve

	Fix for the transform of spawned rollback actors in replays now that gc is not guaranteed to happen between the destroy and respawn

	#jira none

	#AUTOMERGE using branch FNMain->DevNetworking of change#3876761 by Brian.Bekich on 2018/02/07 11:06:24.

Change 4024119 by Ryan.Gerleve

	Better fix for replay gc changes with rollback actors - rename pending kill copy out of the way first

	#jira none

	#AUTOMERGE using branch FNMain->DevNetworking of change#3877425 by Brian.Bekich on 2018/02/07 15:14:42.

Change 4024125 by Ryan.Gerleve

	Allow replays to ignore rpcs while fast forwarding (demo.FastForwardIgnoreRPCs)

	#jira FORT-67138

	#AUTOMERGE using branch FNMain->DevNetworking of change#3877483 by Brian.Bekich on 2018/02/07 15:31:41.

Change 4024126 by Ryan.Gerleve

	Save additional state of rollback actors in replays to be applied upon respawn (demo.SaveRollbackActorState)
	Convert FRepState in object replicator to a shared pointer

	#jira none

	#AUTOMERGE using branch FNMain->DevNetworking of change#3877681 by Brian.Bekich on 2018/02/07 16:52:11.

Change 4024131 by Ryan.Gerleve

	[+] Add -csvdemostarttime and -csvdemoendtime command line arguments to automate CSV profiles when running replays. Since these commands use the playback time of the replay, they are much more reliable than the loading screen method we used previously.

	#jira none

	#AUTOMERGE using branch FNMain->DevNetworking of change#3879630 by Luke.Thatcher on 2018/02/08 14:26:01.

Change 4024155 by Ryan.Gerleve

	Fixed potential null access in DemoNetDriver

	#jira none
	#AUTOMERGE using branch FNMain->DevNetworking of change#3882753 by Jeff.Farris on 2018/02/09 16:46:43.

Change 4024158 by Ryan.Gerleve

	Fixup issues with Demo Recording and Playback when using Streaming Levels.

	#jira FORT-65185

	#AUTOMERGE using branch FNMain->DevNetworking of change#3889448 by Jon.Nabozny on 2018/02/14 13:09:22.

Change 4024164 by Ryan.Gerleve

	Create Burn In for DemoRecording / Replays

	#jira NONE
	#AUTOMERGE using branch FNMain->DevNetworking of change#3890879 by Jon.Nabozny on 2018/02/15 01:31:47.

Change 4024176 by Ryan.Gerleve

	Added DemoNetDriver::IsSavingCheckpoint.

	#jira none

	#AUTOMERGE using branch FNMain->DevNetworking of change#3897504 by Jeff.Farris on 2018/02/19 12:55:37.

Change 4024178 by Ryan.Gerleve

	Fix up edge cases in Replays where Actors were being destroyed inappropriately.

	#jira None
	#AUTOMERGE using branch FNMain->DevNetworking of change#3903472 by Jon.Nabozny on 2018/02/22 09:40:02.

Change 4024181 by Ryan.Gerleve

	Support the notion of Rewindable Actors for replays. These are actors that shouldn't be destroyed during scrubbing.

	#jira FORT-71396
	#AUTOMERGE using branch FNMain->DevNetworking of change#3908062 by Jon.Nabozny on 2018/02/24 11:59:27.

Change 4024184 by Ryan.Gerleve

	Add functions to DemoNetDriver to support testing for changes in replicated state.
	Clean up RepLayout DiffProperties, support passing flags in, add a flag to include conditional properties.

	#AUTOMERGE using branch FNMain->DevNetworking of change#3908132 by ryan.gerleve on 2018/02/24 16:25:20.

Change 4024194 by Ryan.Gerleve

	Change a cvar to GetValueOnAnyThread

	#AUTOMERGE using branch FNMain->DevNetworking of change#3910273 by ryan.gerleve on 2018/02/26 16:34:44.

Change 4024197 by Ryan.Gerleve

	Replication Graph v1. This is the new system for dedicated server performance in BR. It is currently disabled by default. Other changes to engine should have no practical impact on existing behavior.

	#jira nojira

	Engine Changes Summary
	-------------------------------------------

	UNetConnection::>ActorChannels no longer public. This is to prevent code from adding/removing actor channels from underneath the ReplicationDriver.

	UActorChannel::Close() returns int64 for num bits written. int64 is used because that is what FBitWriter uses.

	UNetconnection::DestroyedStartupOrDormantActorGUIDs now private. Add/Remove/Reset methods are exposed. This is so RepDriver can intercept these calls (when present).

	Added USimulatedClientNetConnection. Use net.SimulateConnections command to add them.

	New UNetDriver::ForceNetUpdate function. Notifies replication driver that force net update was called.

	UNetDriver::DestroyedStartupOrDormantActors now wraps the FActorDestructionInfo in TUniquePtr. This is so pointers to destruct infos are stable within the map and rep driver can keep track of them in its own list.

	UNetDriver::GetFunctionRepLayout exposed as ENGINE_API for RepDriver use.

	UNetDriver::ProcessRemoteFunction changes a bit.
	-Forwards to RepDriver if present. The intention is to give RepDriver the chance to change routing logic and do its own traffic bookkeeping on the RPC.
	-A new function, ProcessRemoteFunctionForChannel exists for the meat of the RPC call which RepDriver probably doesn't want to change and is free to call.
	-Removed FRepLayout::SendPropertiesForRPC first UObject parameter because it was not used.

	New function UNetDriver::NotifyActorDormancyChange for when actor dormancy changes.

	New Functions UNetDriver::AddNetworkActor/RemoveNetworkActor. These forward to the rep driver if present.
	-Really want to get rid of public access to GetNetworkObjectList() outside of net code. Doesn't seem easy without breaking backcompat.

	New Function UNetDriver::NotifyActorTearOff for when tear off happens.
	-bTearOff is public though. RepGraph requires the explicit TearOff() call to notify the system about tear off actors. I'm not sure how to fix this with deprecation warnings. (Keep variable public but warn if accessed)

	New UNetDriver::RemoveClientConnection function should be the only place that removes ClientConnections. Forwards to RepDriver.
	-Again, would like to make ClientConnections private but it is used all over the place. (Thankfully only one place removes from it).

	New UNetDriver::NotifyActorFullyDormantForConnection. So RepGraph can intercept and do its book keeping.

	Made UNetDriver::IsLevelInitializedForActor public.

	Made UNetDriver::FlushActorDormancyInternal to hold common code that happens when Dormancy is flushed or changes.

	FNetworkObjectList::FindOrAdd has optional bool parameter for if actor info was actually added.

	UWorld has new delegates for when all starting actors are initialized and registered with networking.
	-TODO: NavSystem and AI system should make use of this. The currently has direct function calls into them.

	Moved checks for bPendingDormancy/Dormant into UActorChannel::StartBecomingDormant rather than at the callsite(s).

	Added GReplicationGatherPriortizeTimeSeconds, GServerReplicateActorTimeSeconds, GReplicateActorTimeSeconds, GNumReplicateActorCalls. These are for new Replication CSV stat group (disabled by default).

	FObjectReplicator::QueueRemoteFunctionBunch drops MustBeMappedGUIDs if it suppresses the RPC call. This fixes a bug that exists in both systems.

	UWorld::SpawnActor now adds network actor after PostSpawnInitialize rather than prior. This is so the initial location of the actor can be used.
	-Deferred actor spawning can still make this not the case, but without this change there is no chance of the actor location being correct.
	-In this case, I care about this for FN building actors who do not use deferred spawning.

	Added STAT_NetServerGatherPrioritizeRepActorsTime which is the total Server Rep Actor time minus the time spent in ReplicateActor.

	-Removed STAT_NumRelevantActors because it made no sense (set to whatever connection repped last).
	-STAT_NumReplicatedActors now sum of replicated actors on all connections for the frame.
	-STAT_NumReplicatedActorBytes now sum of replicated property bytes on all connections per frame. Does not track package map guid bytes.

	-FRepLayout BuildSharedSerializationForRPC/ClearSharedSerializationForRPC exposed as ENGINE_API for RepGraph to use.

	Non Networking Engine Changes:
	Added optional RenderColor parameter to K2_DrawBox.

	ULevel::HasVisibilityChangeRequestPending and ULevel::IsNetActor exposed as ENGINE_API so ReplicationGraph module can call it.

	Added AHUD::OnHUDPostRender callback for easier debug huds that don't revolve around players or debug actor targets.

	#AUTOMERGE using branch FNMain->DevNetworking of change#3914530 by david.ratti on 2018/02/28 10:53:10.

Change 4024210 by Ryan.Gerleve

	DemoNetDriver properly unreadies level status in OnLevelRemovedFromWorld.

	#jira none

	#AUTOMERGE using branch FNMain->DevNetworking of change#3919218 by ryan.gerleve on 2018/03/01 18:50:11.

Change 4024213 by Ryan.Gerleve

	UDemoNetDriver now properly associates actor channel close bunches with the actor's level. Fixes ensures & asserts that were occurring during replay playback due to trying to handle these channel closes while the level was streamed out.
	Moved the check for IsRecording in the ConditionallyCreatePacketManager functions to an if, since the check can now be triggered while the demo net driver is shutting down.

	#jira FORT-71916

	#AUTOMERGE using branch FNMain->DevNetworking of change#3919321 by ryan.gerleve on 2018/03/01 19:26:43.

Change 4024217 by Ryan.Gerleve

	Fix for placed actors not respawning in some cases when scrubbing in a replay: don't add startup actors that are destroyed due to level streaming out to a replay checkpoint's destroyed actor list. Added some verbose (off by default) logging to help detect these cases.

	#jira FORT-73939

	#AUTOMERGE using branch FNMain->DevNetworking of change#3923164 by ryan.gerleve on 2018/03/03 11:19:37.

Change 4024310 by Ryan.Gerleve

	Replication Graph:

	* Fix issue with dormancy node not fully reseting when spatialization grid is rebuilt
	* Improved some logging when failures do happen
	* Added Net.RepGraph.Spatial.BiasCreep cvar to force spatial rebuild every frame
	* Added blacklist of classes that can never cause a spatial rebuild.
	* Fixed issue with dynamic actors changing cull distances dynamically.
	* Removed unused rep graph node.

	#jira none

	#AUTOMERGE using branch FNMain->DevNetworking of change#3931497 by david.ratti on 2018/03/07 11:58:14.

Change 4024316 by Ryan.Gerleve

	Replication Graph
	-Fix issue where dependant actor channels could stay open
	-Fix global actor channel timeout property to actually be used

	#jira none

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3933936 by david.ratti on 2018/03/08 08:22:35.

Change 4024365 by Ryan.Gerleve

	Added some debug functions: Net.RepGraph.PrintAllActorInfo, FortRepGraph.PrintRouting
	Minor cleanup, additional comments

	#jira none

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3936644 by David.Ratti on 2018/03/09 11:13:37.

Change 4024369 by Ryan.Gerleve

	Fix repgraph crash with certain spawned actors
	#jira none

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3937302 by David.Ratti on 2018/03/09 15:03:02.

Change 4024382 by Ryan.Gerleve

	Initial work for high priority RPCs. This will allow damage RPCs to be sent immediately at the top of a frame rather than at the end. Currently disabled while testing.
	#jira none

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3944887 by David.Ratti on 2018/03/14 10:01:35.

Change 4024384 by Ryan.Gerleve

	#UE4 Explicitly discarding the ReplicationDriver in UNetDriver::Shutdown. Fixes a crash when shutting down a net driver when the replication graph object is listening to delegates.

	#jira nojira

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3946884 by Bob.Tellez on 2018/03/14 22:03:36.

Change 4024391 by Ryan.Gerleve

	GameplayDebugger support for ReplicationGraph. AGameplayDebuggerCategoryReplicator will start replicating once a replication owner is set on it.

	#jira none

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3949584 by David.Ratti on 2018/03/16 08:36:01.

Change 4024394 by Ryan.Gerleve

	Fix crash in rep graph when spatialization gets rebuilt while dormancy actors were in a particular state.

	Dormancy nodes still had delegates registered for their contained actors. Though they dumped the list of actors, they would still get notification when the actors' dormancy changed which would cause them to readd the actors some times. If these nodes overlapped between rebuilds, actors could get readded to the same node twice which ultimately leads to them not being fully removed when they do get destroyed, and garbage AActor* trying to replicate. Net.RepGraph.Verify can catch these problems.

	To fix, we are going to MarkPendingKill the GridCell nodes rather than keeping them around and just reseting their actor lists. They will get recreated as needed.

	They could have also manually unregistered each of their delegates but this is more complicated and probably performs worse overall (though spatial rebuild is rare/should never really happen in a  real game). Just marking the uobject pending kill will suppress the delegate callbacks to the nodes.

	#jira FORT-76555
	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3952558 by David.Ratti on 2018/03/19 09:19:09.

Change 4024395 by Ryan.Gerleve

	RepGraph was not "undormatizing" actors when streaming levels were reloaded like legacy was.

	#jira FORT-76729

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3959632 by david.ratti on 2018/03/22 12:51:19.

Change 4024398 by Ryan.Gerleve

	Fix for dormant actors not opening actor channel for multicast rpcs in some cases. Use the global cull distance rather than the per-connection which is cleaered for dormancy trickle.

	#jira FORT-76101

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3960888 by david.ratti on 2018/03/22 19:23:00.

Change 4024402 by Ryan.Gerleve

	Fix dormant actors being instant destroyed not playing their death gameplay cue

	#jira FORT-76101

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3965842 by david.ratti on 2018/03/26 17:23:31.

Change 4024403 by Ryan.Gerleve

	More robust fix for rep graph having multiple channels for the same actor open simulataneously. Guarded behind CVar_RepGraph_FixDuplicateChannels.
	Add a replication driver hook for UActorChannel::CleanUp.
	Don't replicate actors or RPCs if the channel is closing.
	Don't clear the channel pointer on FConnectionReplicationActorInfo as soon as the channel closes, but wait until it's cleaned up to either clear the channel if the actor's dormant or remove the actor info from the map completely otherwise.
	Fixed missing include in ReplicationGraphDebugging.

	#jira FORT-77769

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3975732 by ryan.gerleve on 2018/03/30 16:03:25.

Change 4024415 by Ryan.Gerleve

	Fix potential actor channel churning by making sure the close frame num is never lowered. This could happen for short-lived dependant actors.

	Removed CVar_RepGraph_FixDuplicateChannels: we definitely need this behavior to always be on.

	#jira FORT-79292

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3980479 by david.ratti on 2018/04/03 08:25:53.

Change 4024419 by Ryan.Gerleve

	Enable Net.RepGraph.EnableRPCSendPolicy by default. This makes damage/weapon firing RPCs be flushed immediately rather than at the end of the frame, resulting in less latency between clients while shooting.

	#jira none

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3981390 by david.ratti on 2018/04/03 13:24:34.

Change 4024423 by Ryan.Gerleve

	enable Replication csv category by default (when CSV profiling is enabled) on server builds

	#jira none

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3981553 by david.ratti on 2018/04/03 14:04:38.

Change 4024424 by Ryan.Gerleve

	Replication Graph. These are mostly for engine related purposes/cleanup.

	-Don't remove TornOff actors from rep graph when they are destroyed. They are removed when they are torn off already. Fixes benign log warnings.
	-When an actor causes spatialization rebuild, set the bias such that the actor is in the middle of new cell. This mitigates the issue where spatialization would be rebuilt every frame once an actor moves "away from the grid".
	-When rebuilding spatilization, force garbage collection after tearing down old nodes. This is to mitigate OOMs. You are already going to hitch because of the rebuild anyways.
	-Removed some dead/debug code that isnt needed.

	#jira none

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3984296 by David.Ratti on 2018/04/04 12:52:54.

Change 4024427 by Ryan.Gerleve

	Allow setting thresholds for actor replication frequency buckets to help balance them out if too many actors end up in one bucket.

	#jira none

	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3990318 by david.ratti on 2018/04/06 14:47:58.

Change 4024475 by Ryan.Gerleve

	Const-corrected a few parameters

	#jira none
	#AUTOMERGE using branch FortniteMainEngine_to_DevNetworkingEngine of change#3904240 by Ryan.Gerleve on 2018/02/22 15:18:50.

Change 4030975 by Jake.Leonard

	Fixing Linux configs to move the proper configs into the right files.

	#Jira none

Change 4031710 by Jake.Leonard

	Implementation #3 of Steam Auth:

	Features:
	----------------
	* Most of stuff from Implementation #2
	* Blocks users from progressing unless they pass valid keys to the auth system
	* Overrides for licensees to change the behavior
	* Requires little to no configs
	* Has no P2P mesh support

	#Jira UE-10686, UE-50441, UE-50444

Change 4034520 by David.Ratti

	Spot edit rep graph fixes from FN

	-Fix issue where actor channel is created to queue an unreliable rpc, but then times out before actor is returned from rep graph pull. (update time out frame when queueing the rpc)
	-Fix issue where we weren't properly handling DORM_Never when trying to detect dormancy changes.

Change 4037513 by Jon.Nabozny

	Fixup some misused clamps reported by users.

Change 4042569 by Brian.Bekich

	Add sample repgraph implementation to ShooterGame

	#jira UENET-879

Change 4046889 by Brian.Bekich

	- Rep graph and nodes now share the graph globals
	- Fix rep graph world not being updated when using seamless travel
	- Set ShooterSpectatorPawn to not replicate by default to fix rep graph spam
	- Move ShooterPickup actors to the static spatialized list

	#jira UE-58540

Change 4048648 by Ryan.Gerleve

	Change replication driver warning to log.

	#jira UE-58578

Change 4048939 by Brian.Bekich

	Adding null check for game viewport client to OnPreLoadMap

	#jira UE-58579

[CL 4051554 by Ryan Gerleve in Main branch]
2018-05-04 10:11:42 -04:00
Ben Marsh
30f891786a Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3847469)
#lockdown Nick.Penwarden
#rb none

============================
  MAJOR FEATURES & CHANGES
============================

Change 3805828 by Gil.Gribb

	UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works.

Change 3806784 by Ben.Marsh

	UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT.

Change 3807549 by Graeme.Thornton

	Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it.

Change 3807727 by Graeme.Thornton

	Unhide the text asset format experimental editor option

Change 3807746 by Josh.Engebretson

	Remove WER from iOS platform

Change 3807928 by Robert.Manuszewski

	When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet

Change 3808221 by Steve.Robb

	GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule()

	^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway.

Change 3809233 by Graeme.Thornton

	TBA: Misc changes to text asset commandlet
	 - Rename mode to "loadsave"
	 - Add -outputFormat option which can be assigned "text" or "binary"
	 - When saving binary, use a differentiated filename so that source assets aren't overwritten

Change 3809518 by Ben.Marsh

	Remove the outdated UnrealSync automation script.

Change 3809643 by Steve.Robb

	GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value

	#jira UE-53037

Change 3809862 by Steve.Robb

	GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately

	#jira UE-42593

Change 3811190 by Graeme.Thornton

	Add support for writing specific log channels to their own files

Change 3811197 by Graeme.Thornton

	Minor updates to output formatting and timing for the text asset commandlet

Change 3811257 by Robert.Manuszewski

	Cluster creation will now be time-sliced

Change 3811565 by Steve.Robb

	Define out non-monolithic module functions.

Change 3812561 by Steve.Robb

	GitHub #3886 : Enable Brace-Initialization for Declaring Variables

	Incorrect semi-colon search removed after discussion with author.
	Test added.

	#jira UE-48242

Change 3812864 by Steve.Robb

	Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins.

	See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html

	#jira UE-53089

Change 3820358 by Ben.Marsh

	PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist)


Change 3822594 by Ben.Marsh

	UAT: Improvements to log file handling.

	- Always create log files in the final location, rather than writing to a temp directory and copying in later.
	- Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX.
	- Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is.
	- Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location.

Change 3823695 by Ben.Marsh

	UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk).

	Now always queries changes up to the last change for which zipped binaries are available.

Change 3823845 by Ben.Marsh

	UBT: Exclude C# projects for unsupported platforms when generating project files.

Change 3824180 by Ben.Marsh

	UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes).

	#jira

Change 3825777 by Steve.Robb

	Fix to return value of StringToBytes.

Change 3825810 by Ben.Marsh

	UBT: Reduce length of include paths for MSVC toolchain.

Change 3825822 by Robert.Manuszewski

	Optimized PIE lazy pointer fixup. Should be up to 8x faster now.

Change 3826734 by Ben.Marsh

	Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency.

Change 3827730 by Steve.Robb

	Try to avoid decltype(auto) if it's not supported.

	See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html

Change 3827745 by Steve.Robb

	Initializer list support for TMap.

Change 3827770 by Steve.Robb

	GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType()

	#jira UE-53813

Change 3829189 by Ben.Marsh

	UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off.

Change 3830444 by Steve.Robb

	BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library.
	This should be revisited when Core has its own JSON library.

Change 3830718 by Ben.Marsh

	Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups.

	The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip.

	For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it.

	When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk.

	#jira UE-53845

Change 3831064 by Ben.Marsh

	Fix log file contention when spawning UBT recursively.

Change 3832654 by Ben.Marsh

	UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it.

Change 3832680 by Ben.Marsh

	UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade.

Change 3832695 by Ben.Marsh

	UGS: Invert the options in the 'Show Changes' submenu for simplicity.

Change 3833528 by Ben.Marsh

	UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write].

Change 3833543 by Ben.Marsh

	UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules.

Change 3834354 by Robert.Manuszewski

	Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks.

	#jira UE-52035

Change 3834400 by Robert.Manuszewski

	Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup.

	#jira UE-52035

Change 3834947 by Steve.Robb

	USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal.

Change 3835004 by Ben.Marsh

	Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL.

Change 3835340 by Ben.Marsh

	Fix errors making installed build from directories with spaces in the name.

Change 3835972 by Ben.Marsh

	UBT: Improved diagnostic message for targets which don't need a version file.

Change 3836019 by Ben.Marsh

	UBT: Fix warnings caused by defining linkage macros for third party libraries.

Change 3836269 by Ben.Marsh

	Fix message box larger than the screen height being created when a large number of modules are incompatible on startup.

Change 3836543 by Ben.Marsh

	Enable SoundMod plugin on Linux, since it's already supported through the editor.

Change 3836546 by Ben.Marsh

	PR #4412: fix type mismatch (Contributed by nakapon)


Change 3836805 by Ben.Marsh

	Fix commandlet to compile marketplace plugins.

Change 3836829 by Ben.Marsh

	UBT: Fix ability to precompile plugins from installed engine builds.

Change 3837036 by Ben.Marsh

	UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds.

Change 3837037 by Ben.Marsh

	UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro).

Change 3837040 by Ben.Marsh

	UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed.

Change 3837247 by Ben.Marsh

	UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files).

	Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor.

Change 3837262 by Ben.Marsh

	UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module.

	Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets.

Change 3837343 by Ben.Marsh

	UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead.

Change 3837356 by Ben.Marsh

	Fix invalid character encodings.

Change 3837727 by Graeme.Thornton

	UnrealPak: KeyGenerator: Only generate prime table when required, not all the time

Change 3837823 by Ben.Marsh

	UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window.

Change 3837831 by Graeme.Thornton

	UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives

Change 3837857 by Robert.Manuszewski

	PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch)


Change 3837943 by Robert.Manuszewski

	PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch)


Change 3838451 by Ben.Marsh

	UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread.

	#jira UE-53996

Change 3839519 by Ben.Marsh

	UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data.

Change 3843790 by Graeme.Thornton

	UnrealPak: Log the size of all encrypted data

Change 3844258 by Ben.Marsh

	Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace.

	Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure.

	#jira UE-54157

Change 3845796 by Ben.Marsh

	Workaround for slow performance of String.EndsWith() on Mono.

Change 3845823 by Ben.Marsh

	Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun.

	#jira UE-54123

Change 3845901 by Arciel.Rekman

	Linux: fix crash due to lambda lifetime issues (UE-54040).

	- The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+).

	(Edigrating 3819174 to Dev-Core)

Change 3846439 by Ben.Marsh

	Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates.

	Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main.

Change 3816608 by Ben.Marsh

	UBT: Use DirectoryReference objects for all include paths.

Change 3816954 by Ben.Marsh

	UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere.

Change 3816986 by Ben.Marsh

	UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly.

Change 3816991 by Ben.Marsh

	UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules.

Change 3823090 by Ben.Marsh

	UAT: Improve logging for child UAT instances.

	- Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder.
	- Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway.
	- Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read.
	- Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output.

Change 3826082 by Ben.Marsh

	UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target.

Change 3827025 by Ben.Marsh

	UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling.

Change 3829927 by James.Hopkin

	Made HTTP interface const correct

Change 3833533 by Ben.Marsh

	Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.

Change 3835826 by Ben.Marsh

	UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced.

Change 3835969 by Ben.Marsh

	UBT: Fix cases where text is being written directly to the console rather than via logging functions.

Change 3837777 by Steve.Robb

	Format string type checking added to FOutputDevice::Logf.
	Fixes for those.

Change 3838569 by Steve.Robb

	Algo moved up a folder.

[CL 3847482 by Ben Marsh in Main branch]
2018-01-20 11:19:29 -05:00
Ben Marsh
13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3209340 on 2016/11/23 by Ben.Marsh

	Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.

	Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.

	  * Every header now includes everything it needs to compile.
	        * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
	        * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
	  * Every .cpp file includes its matching .h file first.
	        * This helps validate that each header is including everything it needs to compile.
	  * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
	        * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
	        * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
	  * No engine code explicitly includes a precompiled header any more.
	        * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
	        * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.

	Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
Chris Babcock
2b886e2c93 Copying //UE4/Dev-Mobile to //UE4/Main (Source: //UE4/Dev-Mobile @ 2945914)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2911743 on 2016/03/16 by Allan.Bentham

	Fix broken tonemapper when using 32bpp encoded HDR. Fixes UE-28359
	Cleaned up some ronin integration hacks from ronin.

Change 2912053 on 2016/03/16 by Peter.Sauerbrei

	disable Vulkan in Win32 builds for now
	#codereview rolando.caloca
	#jira UE-28465

Change 2914512 on 2016/03/18 by Dmitriy.Dyomin

	Fixed crash on Nexus5 with Android 4.4.2 when TonemapperFilm is enabled

Change 2914944 on 2016/03/18 by Allan.Bentham

	Fix es2 tonemap flip. Fixes UE-25148

Change 2915248 on 2016/03/18 by Chris.Babcock

	Updates to support NDK r11
	#jira UE-28529
	#ue4
	#android

Change 2919192 on 2016/03/22 by Chris.Babcock

	NDK level set above 19 forces minSdkVersion to 21 or above to prevent installing on unsupported devices
	#jira UE-28408
	#ue4
	#android
	#codereview Jack.Porter

Change 2919591 on 2016/03/23 by Allan.Bentham

	Merge ronin's Gaussian DoF to 4.11's dof changes.

	Gaussian DoF will use a single recombine pass with ES31 devices or if no separate translucency is used on SM4+.
	Added permutation to exclude separate translucency from Gaussian recombine shader when not in use.

	#codereview martin.mittring

Change 2920758 on 2016/03/24 by Dmitriy.Dyomin

	Fixed: shifting lighting samples octree
	https://udn.unrealengine.com/questions/276026/lighting-samples-visualization-not-working-with-le.html

Change 2920793 on 2016/03/24 by Dmitriy.Dyomin

	Fixed: When sub-level set to be unloaded but with visbility state set to true, ULevelStreaming::IsStreamingStatePending returns wrong value
	#jira UE-26426

Change 2920981 on 2016/03/24 by Dmitriy.Dyomin

	GPU particles support for iOS Metal (A8+ only)
	#jira UE-11067
	#jira UE-28514
	#codereview Jack.Porter

Change 2921383 on 2016/03/24 by Allan.Bentham

	Fix inverted image on device when framebuffer fetch/bViewRectSource is not used.
	#codereview jack.porter

Change 2925694 on 2016/03/29 by Dmitriy.Dyomin

	Fixed: GPU particles and bloom on S7 Mali

Change 2927065 on 2016/03/29 by Chris.Babcock

	Set the DT_SONAME field in linker (stops warning toast)
	#ue4
	#android
	#codereview Jack.Porter

Change 2927375 on 2016/03/30 by Jack.Porter

	Fixed localization for placement mode Cube, Sphere, Cylinder and Cone

Change 2928643 on 2016/03/30 by Jack.Porter

	Fixed bug introdued by Ronin merge with DepthOfFieldScale setting being locked for BokehDOF

	#code_review: allan.bentham

Change 2932773 on 2016/04/04 by Jack.Porter

	Reapply android Vulkan version fixes

Change 2932853 on 2016/04/05 by Jack.Porter

	Enable VULKAN_CLEAR_SURFACE_ON_CREATE on Android to prevent assertion

Change 2932998 on 2016/04/05 by Jack.Porter

	Native web browser widget on iOS

	#jira UEMOB-20

Change 2933420 on 2016/04/05 by Chris.Babcock

	Removed hard-coded bUseUnityBuild in UBT for Android (contributed by kosz78)
	#jira UE-29066
	#pr #2236
	#ue4
	#android

Change 2934315 on 2016/04/05 by Chris.Babcock

	Allow Android to act as server with OnlineSubsystemNull (contributed by psychogony)
	#jira UE-23937
	#PR #1820
	#ue4
	#android
	#codereview Ryan.Gerleve

Change 2935038 on 2016/04/06 by Chris.Babcock

	Fix OpenGLES31 compile error
	#ue4
	#android
	#codereview Jack.Porter

Change 2936288 on 2016/04/07 by Allan.Bentham

	Planar reflection captures for mobile. (UE-27426)
	Added mobile planar reflection flag to material.

	#codereview jack.porter, daniel.wright

Change 2936297 on 2016/04/07 by Allan.Bentham

	Missed file. Planar reflection captures for mobile. (UE-27426)
	#codereview jack.porter, daniel.wright

Change 2937763 on 2016/04/08 by Dmitriy.Dyomin

	Fix InstancedStaticMesh batches for ES2 (contributed by Grimmick)
	GitHub #2031
	#jira UE-26576
	#codereview Jack.Porter

Change 2937863 on 2016/04/08 by Jack.Porter

	Merged Ronin CLs 2840392, 2860028

	Allow vertex texture fetches on ES2 (requires absolute mip level)

Change 2938461 on 2016/04/08 by Chris.Babcock

	Write Android uninstall batch files
	#ue4
	#android

Change 2939679 on 2016/04/11 by Allan.Bentham

	Remove bStationaryLightUsesCSMForMovableShadows from light component's UI.
	renamed proxy equivalent and infer its state from Inset Shadows For Movable Objects

	#codereview jack.porter, daniel.wright

Change 2939887 on 2016/04/11 by Chris.Babcock

	Android ARM64 libraries
	#jira UEPLAT-1268
	#ue4
	#android

Change 2940125 on 2016/04/11 by Chris.Babcock

	Added requirements to Arm64 and x86_64 tooltips

Change 2941051 on 2016/04/12 by Allan.Bentham

	Fix for inverted RG channels when using filmic tonemapper with ES2.
	#codereview jack.porter

Change 2942523 on 2016/04/13 by Chris.Babcock

	Add cxa_demangle build.cs instead of hiding dependency in UEBuildAndroid.cs
	#ue4
	#android
	#codereview Josh.Adams

Change 2942578 on 2016/04/13 by Chris.Babcock

	Add cxademangle dependency to Core for Android
	#ue4
	#android
	#codereview Josh.Adams

Change 2942997 on 2016/04/13 by Chris.Babcock

	Run Ant with -quiet first and run again without if there is an error for the log
	#ue4
	#android
	#codereview Josh.Adams

Change 2943320 on 2016/04/14 by Jack.Porter

	Fixed planar reflection merge errors

Change 2943352 on 2016/04/14 by Jack.Porter

	Fix NAME_VULKAN_ES3_1_ANDROID shader format name

	#codereview: Rolando.Coloca

Change 2943367 on 2016/04/14 by Dmitriy.Dyomin

	Added cvars to add or strip specific GL extensions from a driver reported extensions string
	#jira UE-29467

Change 2943425 on 2016/04/14 by Dmitriy.Dyomin

	Better logging of MobileHDR mode

Change 2943461 on 2016/04/14 by Dmitriy.Dyomin

	Fixing HDR rendering and bloom on Galaxy S7

Change 2943493 on 2016/04/14 by Dmitriy.Dyomin

	Better HDR fix for devices with ES3 support

Change 2943855 on 2016/04/14 by Allan.Bentham

	Mobile planar reflections.
	 - currently only supports opaque materials
	#codereview jack.porter

Change 2944721 on 2016/04/14 by Chris.Babcock

	Allow Vulkan-only Android builds
	#ue4
	#android
	#codereview Allan.Bentham,Jack.Porter

Change 2944771 on 2016/04/14 by Dmitriy.Dyomin

	Fixed: mesh particles crash in ES2

Change 2944827 on 2016/04/15 by Dmitriy.Dyomin

	Fixed: GPU particles not working on S6 with Android 6.0.1

Change 2944836 on 2016/04/15 by Jack.Porter

	Disable FX system calls in forward renderer when particles showflag is off

Change 2944840 on 2016/04/15 by Jack.Porter

	Re-enabled non-radial TDeferredLightVS on ES2 for planar and put  #if FEATURE_LEVEL >= FEATURE_LEVEL_SM4  around the radial shader code which was tripping up ES2.

	#codereview: Allan.Bentham, Chris.Babcock, Daniel.Wright

Change 2944914 on 2016/04/15 by Jack.Porter

	Device profiles to detect Galaxy S7 Mali and Adreno variants in Vulkan mode

Change 2945020 on 2016/04/15 by Gareth.Martin

	Cloning changes across from Dev-Landscape to Dev-Mobile due to feature deadline for 4.12.

	Change 2943560 on 2016/04/14 by Gareth.Martin

	        Added ability to expand landscape bounds
	        #jira UE-28928
	        #jira UE-25230

	Change 2943538 on 2016/04/14 by Gareth.Martin

	        Fix a crash with saving a level >2GB in size.
	        There may still be other crashes with >2GB levels.

	Change 2943477 on 2016/04/14 by Gareth.Martin

	        Fixed LODFalloff setting on landscape getting reset when using the "Change Landscape Component Size" tool
	        Also moved all the LOD settings together in LandscapeProxy.h because it was messy

	Change 2942113 on 2016/04/13 by Gareth.Martin

	        Updating comment to clarify behaviour of Foliage Align-To-Normal when Random-Yaw is disabled.

	Change 2941030 on 2016/04/12 by Gareth.Martin

	        Cleanup and commenting

	Change 2940994 on 2016/04/12 by Gareth.Martin

	        Implement random scale option for Landscape Grass.
	        #jira UE-25743

	Change 2940993 on 2016/04/12 by Gareth.Martin

	        Remove unused BuildFlatTree function from HierarchicalInstancedStaticMeshComponent

	Change 2940150 on 2016/04/11 by Gareth.Martin

	        Harden UHierarchicalInstancedStaticMeshComponent::UpdateInstanceTransform

	Change 2940101 on 2016/04/11 by Gareth.Martin

	        Additional checks for bad static mesh when building the HISMC tree

Change 2945560 on 2016/04/15 by Rolando.Caloca

	DM - Fix for newer Vulkan sdks

Change 2945638 on 2016/04/15 by Chris.Babcock

	Fix permissions on uninstall script on Mac
	#jira UE-29236
	#ue4
	#android
	#lockdown Jack.Porter

Change 2945856 on 2016/04/15 by Rolando.Caloca

	DM - vk - Fix mapped allocations on mobile

#lockdown nick.penwarden

[CL 2945995 by Chris Babcock in Main branch]
2016-04-15 18:19:26 -04:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Tim Sweeney
324683ce78 Engine source (Main branch up to CL 2026164) 2014-03-14 14:13:41 -04:00