Commit Graph

111 Commits

Author SHA1 Message Date
Gil Gribb 2e5b4cbbd1 Copying //UE4/Dev-Rendering to Dev-Main (//UE4/Dev-Main)
#lockdown nick.penwarden

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

Change 2821445 on 2016/01/08 by Olaf.Piesche
	More vertex factory improvements, storing off particle vertex factories on the scene proxy instead of the dynamic data to avoid recreating all the time; saves up to 2ms render thread time according to QA's testing.

	#rb martin.mittring

Change 2821520 on 2016/01/08 by Olaf.Piesche

	Coloring subuv modules green for easier visual ID

	#rb martin.mittring

Change 2823479 on 2016/01/11 by Chris.Bunner

	Updated Lightmass HLOD logic to avoid HLODs shadowing non-related meshes. Duplicated CL#2823104 from Dev-General.

Change 2823570 on 2016/01/11 by Zabir.Hoque

	Introduce multiplier that controls decal fade speed.

	#CodeReview: Martin.Mittring
	#1777

Change 2823615 on 2016/01/11 by Uriel.Doyon

	Fixed stencil ref multithreading issue.
	Fixed state caching when depth range is enabled.
	#jira UE-24564
	#review marcus.wassmer

Change 2823652 on 2016/01/11 by Zabir.Hoque

	Rename FadeSpeedScale -> FadeDurationScale to be logically more consistent.

	#CodeReview: Martin.Mittring

Change 2824065 on 2016/01/11 by Brian.Karis

	Fixed last viewrect motion blur bug. Enabled new motion blur algorithm for default.

Change 2825432 on 2016/01/12 by Zabir.Hoque

	Store off view matrices at at time of freezing and base lod selection useing relevant matrices, thus allows lods to be frozen. #OR-10918

	#CodeReview: Marcus.Wassmer, Rolando.Caloca, Martin.Mittring

Change 2825971 on 2016/01/12 by Brian.Karis

	New motion blur enabled.

Change 2825974 on 2016/01/12 by Brian.Karis

	Fixed refraction check value. 1 does nothing not 0.

Change 2825975 on 2016/01/12 by Brian.Karis

	Cloth gets skylight for movable sky.

Change 2827519 on 2016/01/13 by Zabir.Hoque

	ALLOW_UAV_CONDITION did not have a safe fallback when not SM5.0 && COMPILER_SUPPORTS_ATTRIBUTES.

	#CodeReview Martin.Mittring, Rolando.Caloca

Change 2830172 on 2016/01/15 by Rolando.Caloca

	DR - Minor cleanup
	- Renamed Vertex Factories' struct Data to struct FData
	- Removed Data type on FVertexFactory

Change 2830242 on 2016/01/15 by Rolando.Caloca

	DR - Prep cleanup for gpu morph targets
	- Split common code for  GPU skin cache into a base class
	- Moved some local static arrays from UpdateMorphVertexBuffer() to static members
	#codereview Lina.Halper

Change 2830455 on 2016/01/15 by Rolando.Caloca

	DR - Compile fix from bad merge
	#jira UE-25557

Change 2832023 on 2016/01/18 by Rolando.Caloca

	DR - Removed TangentZDelta_DEPRECATED from FVertexAnimDelta
	#rb Marcus.Wassmer
	#codereview Lina.Halper

Change 2832067 on 2016/01/18 by Gil.Gribb

	UE4 - Changed PC to default to parallel rendering when not in editor. Fixed lack of a stall on texture locks and unlocks coming from texture streamer. Fixed a few cases where stuff was being added to rhicommandlists even when we were bypassed.

Change 2834379 on 2016/01/19 by Gil.Gribb

	UE4 - fix perf regression related to cvar

Change 2834864 on 2016/01/19 by Olaf.Piesche

	Fixing potential crash with auto-kill trail emitters, fixing use of the wrong flag to auto-deactivate

	#codereview gil.gribb

Change 2835777 on 2016/01/20 by David.Hill

	EyeAdaptation - using a screen center focus in the weights
	#rb Martin Mitring

	related to: UE-15509.  This is adding the ability to focus the basic eye-adaptation region in the center of the screen, and cvar functionality for paragon testing on ps4

Change 2835778 on 2016/01/20 by David.Hill

	EyeAdapation - DefaultFeature for method
	#rb Martin.Mitring
	Adding a default feature cvar for eye adaptation method

Change 2837410 on 2016/01/20 by David.Hill

	OR-13213   SetupPerObjectProjection()
	#test:PC
	#rb:Martin.Mitring
	#codereview:Daniel.Wright

[CL 2845257 by Gil Gribb in Main branch]
2016-01-27 07:18:43 -05:00
Andrew Grant f25badee7f Copying //UE4/Orion-Staging to //UE4/Main (Origin: //Orion/Dev-General @2826496)
#lockdown Nick.Penwarden

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

Change 2826201 on 2016/01/13 by Zabir.Hoque

	Add more verbose logging to try to understand #OR-11297

	#lockdown Andrew.Grant
	#CodeReview Marcus.Wassmer
	#RB none
	#TESTS compiled Win64 debug editor, ran agora_p

Change 2826170 on 2016/01/13 by Marcus.Wassmer

	Flush unloaded resource properly in LoadMap
	#codereview Gil.Gribb
	#rb none
	#test cycling game.  memory is freed properly now.
	#lockdown Andrew.Grant

Change 2826135 on 2016/01/12 by Michael.Noland

	Orion: Improve login screen on PC to reduce the potential impact of framerate on data center ping calculation
	- Disabled async streaming for the duration of the QOS ping measurement to avoid hitches
	- Added a circular throbber in the top left corner of the login screen indicating that something is async streaming (as a diagnostic tool for users affected by the datacenter ping, can be removed in the future)
	- Added logging of the current average frame time when the datacenter ping is finalized
	- Added a 'Pick Ideal Settings' button to the login screen (note: on the actual screen, not the login widget, so it will not appear on PS4)
	#jira OR-12453
	#rb paul.moore
	#tests Ran a QOS server and client and verified that the new logging is occurring, tried out the new benchmark button, etc...

	Merging CL# 2826128 using //Orion/Main_to_//Orion/Dev-General

Change 2826131 on 2016/01/12 by Michael.Noland

	#UE4 - added print out of MS/FPS during Qos ping evaluation
	#rb michael.noland
	#tests loaded up through login screen to see output

	Merging CL# 2825678 using //Orion/Main_to_//Orion/Dev-General

Change 2826128 on 2016/01/12 by Michael.Noland

	Orion: Improve login screen on PC to reduce the potential impact of framerate on data center ping calculation
	- Disabled async streaming for the duration of the QOS ping measurement to avoid hitches
	- Added a circular throbber in the top left corner of the login screen indicating that something is async streaming (as a diagnostic tool for users affected by the datacenter ping, can be removed in the future)
	- Added logging of the current average frame time when the datacenter ping is finalized
	- Added a 'Pick Ideal Settings' button to the login screen (note: on the actual screen, not the login widget, so it will not appear on PS4)
	#jira OR-12453
	#rb paul.moore
	#tests Ran a QOS server and client and verified that the new logging is occurring, tried out the new benchmark button, etc...

	Merging CL# 2826116 using //Orion/Release-Next->//Orion/Main

Change 2826116 on 2016/01/12 by Michael.Noland

	Orion: Improve login screen on PC to reduce the potential impact of framerate on data center ping calculation
	- Disabled async streaming for the duration of the QOS ping measurement to avoid hitches
	- Added a circular throbber in the top left corner of the login screen indicating that something is async streaming (as a diagnostic tool for users affected by the datacenter ping, can be removed in the future)
	- Added logging of the current average frame time when the datacenter ping is finalized
	- Added a 'Pick Ideal Settings' button to the login screen (note: on the actual screen, not the login widget, so it will not appear on PS4)
	#jira OR-12453
	#rb paul.moore
	#tests Ran a QOS server and client and verified that the new logging is occurring, tried out the new benchmark button, etc...
	#lockdown andrew.grant
	#codereview josh.markiewicz

Change 2825772 on 2016/01/12 by Dmitry.Rekman

	Linux signal handling improvements.

	- Switch crash handlers to use "crash malloc" (preallocated memory) on crash.
	- Remove unnecessary memory allocations from graceful termination handler.

	#rb none
	#tests Run the Linux server and crashed it a few times.
	#codereview David.Vossel, Michael.Trepka

Change 2825768 on 2016/01/12 by Josh.Markiewicz

	#UE4 - added print out of MS/FPS during Qos ping evaluation
	#rb michael.noland
	#tests loaded up through login screen to see output

Change 2825703 on 2016/01/12 by Brian.Karis

	Switched on new motion blur. Set temporal AA sharpness to 1.

	#rb none
	#TESTS editor

Change 2825689 on 2016/01/12 by Lina.Halper

	Fix for get animation notify crash

	https://jira.ol.epicgames.net/browse/OR-12248
	https://jira.ol.epicgames.net/browse/OR-12348

	- Also fixed the crash in preview of persona due to blend sample cache contains previous animation data
	- Also fixed blend space player to reinitialize cache data
	- The main issue is marker doesn't clamp the length, causing notifies ensure to trigger.

	#rb : Laurent.Delayen
	#tests: 10 Sparrows bot match for long time
	#code review: Martin.Wilson
	#lockdown: Andrew.Grant

Change 2825680 on 2016/01/12 by Martin.Mittring

	fixed all cases with r.Tonemapper.ScreenPercentage, ScreenPercentage, Fringe, Vignette, ViewRect, flickering with transluceny (View members have been modified while other thread was reading)
	#rb:Olaf.Piesche, David.Hill
	#test: PC, many cases

Change 2825579 on 2016/01/12 by Chris.Bunner

	Force shadow shape bone indices on the required update list.
	#rb Lina.Halper, Rolando.Caloca
	#tests Editor
	#codereview Daniel.Wright
	#jira OR-12339

Change 2825443 on 2016/01/12 by Martin.Mittring
2016-01-14 08:11:47 -05: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
Robert Manuszewski dfc39a6ca5 Copying //UE4/Dev-Core to //UE4/Main
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2783106 on 2015/11/30 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream2

	Introduced GC UObject clusters. GC clusters provide means to create disregard for GC subsets at load time (e.g. Materials with material expressions and their textures).

	- Saves about 25ms in reachability analysis (58ms -> 33ms)
	- UObject classes/instances can now be marked as cluster root objects with CanBeClusterRoot() function override.
	- Cluster creation is automatic. Clusters don't require any manual handling for GC to collect them when nothing is referencing them.
	- Moved token stream processing to a new class FFastReferenceFinder to make it more generic and re-usable by other code
	- Removed REFERENCE_INFO macro from GC code and replaced it with a local variable (saves about ~1.9ms: 33.2ms -> 31.3ms)

Change 2773094 on 2015/11/19 by Steve.Robb@Dev-Core

	Multicast script delegate check for existing bindings replaced with ensure.
	Multicast native delegate no longer checks for existing bindings.
	Removal of old delegate code.
	Some FORCEINLINEing to improve debugging experience of stepping into delegate code.

Change 2782180 on 2015/11/27 by Graeme.Thornton@GThornton_DesktopMaster

	Make scoped seconds timer class available outside of stats build. Normal usage macros still remain guarded
	Added SCOPE_SECONDS_COUNTER_RECURSION_SAFE which only times during the outmost instance of a recursive function
	Added SCOPE_SECONDS_COUNTER_RECURSION_SAFE_BASE and SCOPE_SECONDS_COUNTER_BASE which are defined in all build types, for easy temporary timing in Test/Shipping builds.
	Added a boolean parameter to the timer class which can be used to disable it without having to mess around with scoping the calling code

Change 2782635 on 2015/11/30 by Graeme.Thornton@GThornton_DesktopMaster

	Added GetTimeStampPair() to the filemanager and platformfile interfaces. Requests timestamps for a pair of files where we assume that both files would always exist at the same wrapper level. Allows us to skip file system queries for localization package lookups where the native file is in a pak but the localized file doesn't exist.

Change 2775153 on 2015/11/20 by Jaroslaw.Surowiec@Stream.1.JarekSurowiec

	CrashReportServer moved out of the not for licencees, a few fixes, removed RegisterPII

Change 2775560 on 2015/11/20 by Steve.Robb@Dev-Core

	FDelegateBase::GetDelegateInstance deprecated and replaced with FDelegateBase::GetDelegateInstanceProtected.

Change 2781138 on 2015/11/25 by Jaroslaw.Surowiec@Stream.1.JarekSurowiec

	Stats - Converted is using a new stats reader, a few more optimizations, should be 10x times faster

Change 2772990 on 2015/11/19 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream2

	Fixing potential dead lock when suspending and resuming async loading multiple times

Change 2773023 on 2015/11/19 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream2

	Support for references added through AddReferencedObjects in FArchiveReplaceObjectRef

Change 2781055 on 2015/11/25 by Steve.Robb@Dev-Core

	Changes to IDelegateInstance reverted to allow licensees an easier time when upgrading their use of the now-deprecated GetDelegateInstance() code path.
	New TryGetBoundFunctionName() to aid the debugging of delegate bindings in non-shipping configs.

Change 2773114 on 2015/11/19 by Steve.Robb@Dev-Core

	FMath::IsPowerOfTwo is now templated to take any type.

Change 2773643 on 2015/11/19 by Steve.Robb@Dev-Core

	GetDelegateInstance() calls replaced - delegate instances never compare equal unless you are comparing two unbound delegates (both null) or comparing a delegate with itself.

Change 2777686 on 2015/11/23 by Steve.Robb@Dev-Core

	GitHub #1793 - File write flags argument

Change 2780590 on 2015/11/25 by Steve.Robb@Dev-Core

	Fix for FArchiveProxy::operator<< overloads.

Change 2780845 on 2015/11/25 by Jaroslaw.Surowiec@Stream.1.JarekSurowiec

	#jira UE-23358 - MDD relies on hard-coded P4 depot paths (fixed source context for streams)

Change 2780962 on 2015/11/25 by Jaroslaw.Surowiec@Stream.1.JarekSurowiec

	Stats - Added FStatsWriteStream for basic saving stat messages into a stream, initial support for reading a regular stats file, minor performance optimization, coding standard fixes

	#jira UECORE-170 - Improve profiler loading performance (wip)

Change 2781887 on 2015/11/26 by Jaroslaw.Surowiec@Stream.1.JarekSurowiec

	Profiler/ProfilerClient - Removed unneeded synchronization points, replaces with task graph SendTo jobs, removed PROFILER_THREADED_LOAD, replaced with new stats loading mechanism,  should be around 2x times faster (4x since the optimization pass)

	#jira UECORE-170 - Improve profiler loading performance (wip)

Change 2781893 on 2015/11/26 by Steve.Robb@Dev-Core

	TCachedOSPageAllocator abstracted from MallocBinned2.
	Misc tidy-ups.

Change 2782198 on 2015/11/27 by Jaroslaw.Surowiec@Stream.1.JarekSurowiec

	Profiler - Better indication of the loading progress, should no longer freeze without a progress bar

	#jira UECORE-170 - Improve profiler loading performance (wip)

Change 2782446 on 2015/11/29 by Steve.Robb@Dev-Core

	Warn when calling delegates' Create* functions when they're not assigned to anything.

	#codereview robert.manuszewski

Change 2782538 on 2015/11/30 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1

	#UE4 Removed DiskCachedAssetDataBuffer as it was not strictly necessary and was triggering a crash when loading the cached registry from disk. This data is now stored directly in DiskCachedAssetDataMap. It was already true that this map does not change outside of SerializeCache but now it is critical since NewCachedAssetDataMap keeps pointers directly to its values.

	Asset registry fixes by Bob Tellez. Possible fix for UE-23783.

Change 2782564 on 2015/11/30 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1

	FReferenceCollector::AddReferenceObjects performance improvements for TArrays. ARO will no longer call HandleObjectReference multiple times but instead will call HandleObjectReferences just once (currently only implemented for FGCCollector). Reduces the number of virtual function calls while GC'ing.

Change 2782716 on 2015/11/30 by Steve.Robb@Dev-Core

	UObject serial number array initialized for debug visualization.

Change 2782933 on 2015/11/30 by Steve.Robb@Dev-Core

	Critical sections are no longer copyable.

Change 2783061 on 2015/11/30 by Steve.Robb@Dev-Core
2015-12-03 14:21:29 -05:00
Marc Audy e5bb9b4d0d Integrate all non-branch Engine/Source changes from //depot/UE4-Orion to //depot/UE4
#lockdown Ben.Marsh
#platformnotify Josh.Adams

[CL 2718236 by Marc Audy in Main branch]
2015-10-06 15:59:09 -04:00
Richard Hinckley 6ceaa5aba7 Cleaning out programmer-only comments that were harvested by Doxygen.
#platformnotify Josh.Adams

[CL 2690143 by Richard Hinckley in Main branch]
2015-09-14 09:25:39 -04:00
Gil Gribb 2bff847be0 UE4 - Lots of changes to the task graph include new experimental scheduler, current used on PS4, but expected to be used on all platforms after it shakes out.
[CL 2680413 by Gil Gribb in Main branch]
2015-09-04 11:22:22 -04:00
Shaijan 309a233c96 Unshelved from pending changelist '2618083':
PR #1377: use StableSort to sort pak files to preserve previous sorting by fileà (Contributed by Shaijan)

[CL 2641890 by Daniel Lamb in Main branch]
2015-08-03 10:24:42 -04:00
Jamie Dale cfc4051acf Added functions to access low-level file stat data as a single file-system request
You can now use GetStatData to get all of the stat data for a file (its timestamps, size, read-only state, and type (file or directory)) in a single file-system request. Depending on the platform, this can be much more efficient than making multiple requests.

This change also adds alternate directory iteration functions (IterateDirectoryStat and IterateDirectoryStatRecursive) for when you need the stat data along with the files/directories on disk. For platforms that provide this stat data as part of the low-level directory iteration (such as Windows), this can yield much better performance than making two separate file-system requests. Platforms that do not provide this information as part of the directory iteration will just perform a stat request while iterating.

#platformnotify Josh.Adams

[CL 2634161 by Jamie Dale in Main branch]
2015-07-27 13:52:55 -04:00
Eric Newman 88b6f69941 Pass through bAllowWrite flag for PlatformFilePak and NetworkPlatformFile
Fixes bug where Fortnite cooked builds being unable to open log files through PlatformFilePak since they are open for write.
Merged //depot/UE4-Fortnite/Engine/Source/Runtime/... to //depot/UE4/Engine/Source/Runtime/...

[CL 2580616 by Eric Newman in Main branch]
2015-06-08 18:39:51 -04:00
KitatusStudios 7775a401b1 PR #931: Cleaning up Spelling Errors / Grammer Errors in Comments (Contributed by KitatusStudios)
[CL 2577221 by Matt Kuhlenschmidt in Main branch]
2015-06-04 13:19:17 -04:00
Daniel Lamb 92fcbdbf52 Forced patch pak files to be mounted on top of original pak files (first to be read in the queue).
This will need to be changed when the manifests for installed pak files are implemented.

[CL 2520310 by Daniel Lamb in Main branch]
2015-04-21 19:12:44 -04:00
Peter Knepley e84aac9158 Merging 2496325
//depot/UE4-UT/...

to //depot/UE4/...

[CL 2496332 by Peter Knepley in Main branch]
2015-03-30 18:06:50 -04:00
Dmitry Rekman 7a367ae37f Make OpenRead() aware about intended sharing mode of the file.
- Currently essential on Windows only; other platforms may make use of this when managing file handles.

#codereview Eric.Newman, Robert.Manuszewski, Josh.Adams, Michael.Trepka, Chris.Babcock, Marcus.Wassmer, Peter.Sauerbrei

[CL 2480709 by Dmitry Rekman in Main branch]
2015-03-16 17:14:06 -04:00
Saul Abreu 79a26091bf Fixed behavior on FString::ParseIntoArray (muliple delimiters overload) functionality to support optionally culling empty strings. Greatly simplified implementation logic. Output parameter now properly named and taken by reference.
#codereview Steve.Robb, Robert.Manuszewski

[CL 2466824 by Saul Abreu in Main branch]
2015-03-02 15:51:37 -05:00
bruce nesbit 0ffd9d1906 Another revision to IPlatformPak::FFileIterator constructor. (Fixed initialisation of DirectoryIt)
#codereview Marc.Audy

[CL 2466177 by bruce nesbit in Main branch]
2015-03-02 07:41:50 -05:00
bruce nesbit b6575f9e5f Fixed default directory iterator assignment in FFileIterator.
#codereview Marc.Audy

[CL 2465809 by bruce nesbit in Main branch]
2015-03-01 15:29:44 -05:00
Marc Audy a4915b9214 Don't crash if the pak file has no files in it.
[CL 2456407 by Marc Audy in Main branch]
2015-02-23 12:53:53 -05:00
James Moran 3deb184649 Temporary fix for failed check(TlsSlot) when using compressed pak files.
#codereview Jaroslaw.Surowiec

[CL 2451747 by James Moran in Main branch]
2015-02-19 11:43:41 -05:00
Jaroslaw Surowiec beef593d5a Stats - Stats for async task running on the thread pool
[CL 2446649 by Jaroslaw Surowiec in Main branch]
2015-02-16 03:16:32 -05:00
Peter Knepley c1579c61ca Merging CL 2440669, unmount pak support
//depot/UE4-UT/...

to //depot/UE4/...

[CL 2445284 by Peter Knepley in Main branch]
2015-02-13 15:33:23 -05:00
Jaroslaw Surowiec 710c4da708 Core - Replaced FPlatformProcess::CreateSyncEvent with FPlatformProcess::GetSynchEventFromPool, CreateSyncEvent is not longer publicly available
#codereview Robert.Manuszewski

[CL 2421974 by Jaroslaw Surowiec in Main branch]
2015-01-28 07:31:10 -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
Ben Marsh ae11a5d621 Various fixes for include patterns that rely on delayed function instantiation to compile, which prevents including them in isolation. Tidy up some other include patterns.
[CL 2374720 by Ben Marsh in Main branch]
2014-12-03 09:26:36 -05:00
Dmitry Rekman 5c58cd81b3 Fix modular server builds.
- The project file (passed with abs path) could be found in the pak file, but its directory could not.
- Fixed by PeterK in UT4 branch.

#codereview Robert.Manuszewski, Peter.Knepley

(Merging CL 2345332 from UT4 branch to main).

[CL 2364254 by Dmitry Rekman in Main branch]
2014-11-18 19:34:38 -05:00