Commit Graph

289 Commits

Author SHA1 Message Date
Justin Marcus
a6267fe237 Merging using //Fortnite/Dev-EngineMerge-To-//UE4/Main
Manual merge of CL 4940744 because robomerge had issues.

Original Description:

Merging //Fortnite/Dev-Kairos to Main (//Fortnite/Main)

Getting ready for Install Bundle Manager merge to main.  These are Engine/Core fixes


4440445
Fix FBuildPatchInstaller::Initialize() failing for manifests that did not include the empty tag.

#jira no jira
#rb Leigh.Swift


4474598
Add Android Macros to disable optimization
Fix Android directory iteration for OBBs.  FindFilesRecursive() now works.
#jira UEATM-177
#rb Chris.Babcock

4487221
Android file - When mounting an OBB, fix possibly mounting directories as files.
#rb Chris.Babcock

4511214
Fix Android directory iteration not returning the visitor result.  This would cause IPlatformFile::FindFilesRecursively() to prematurely end iteration.
#rb Chris.Babcock

4670945
Fix GetVarArgs format specifier off by 1 error.  These would only show up if you had the format specifier at the end of the format string and only with 'l' and not 'll'.  In that case the code would walk off the end of the format string, usually into another static string.

Fix GetVarArgs to never walk off the end of the format string.

#rb [at]ben.ziegler

4746778
Fix FShaderCodeEntry ref counts being off by one.
This bug was exposed because [Project Name Redacted] doesn't load shaderlibs or the PSO cache until well after engine init.  That means some FShaderResource's are loaded before shader libs or PSO cache and FShaderCodeLibrary::RequestShaderCode() can fail in FShaderResource::SerializeShaderCode().

#rb [at]Gil.Gribb [at]Chris.Babcock

[CL 4948018 by Justin Marcus in Main branch]
2019-02-08 11:00:43 -05:00
Rolando Caloca
cea6ceff5a Unshelved from pending changelist '4932645':
#CodeReview: rolando.caloca,ben.marsh,cristina.riveron,nick.bullard,nick.penwarden

Merge conflict.
rolando.caloca, please merge this change by hand.
More info at https://robomerge.epicgames.net#RELEASE

/src/ROBOMERGE_RELEASE_Main/Engine/Plugins/FX/Niagara/Source/Niagara/Private/NiagaraEmitterInstanceBatcher.cpp - merging //UE4/Release-4.22/Engine/Plugins/FX/Niagara/Source/Niagara/Private/NiagaraEmitterInstanceBatcher.cpp#2


--------------------------------------
UE4.22 - Deprecate ENQUEUE_UNIQUE_RENDER_COMMAND_THREEPARAMETER
#rb none
#jira

#ROBOMERGE-SOURCE: CL 4932643 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 4932685 by Rolando Caloca in Main branch]
2019-02-07 10:35:08 -05:00
Krzysztof Narkowicz
534dd5bde9 Disabled render graph building warnings inside test build, and made it off by default, as it takes considerable amount of render thread time.
#rb none
#fyi Guillaume.Abadie

[CL 4883297 by Krzysztof Narkowicz in Main branch]
2019-02-04 10:14:58 -05:00
Marc Audy
5e4436ab92 Fix UE4 Main build
#rb
#rnx
#codereview Anthony.Bills

[CL 4879728 by Marc Audy in Main branch]
2019-02-02 13:05:10 -05:00
anthony bills
40cdfec4ea Add support for enabling/disabling kepping shader debug info per platform.
- This can be overriden per platform in the [ShaderCompiler] section of the platform's Engine.ini by adding "r.Shaders.KeepDebugInfo"
- Also add in support for exporting the debug info on platforms where it can be stripped and stored as separate files ("r.Shaders.ExportDebugInfo") and this is also per platform.
- Add "r.Shaders.ExportDebugInfoMode" to control how the exported files are stored, 0 for loose or 1 for an uncompressed archive.

#rb david.harvey
[FYI] luke.thatcher


#ROBOMERGE-SOURCE: CL 4867756 via CL 4871614

[CL 4875479 by anthony bills in Main branch]
2019-02-01 21:07:48 -05:00
Krzysztof Narkowicz
10ee8def1f Fixed rendering corruption and crashes when r.DoInitViewsLightingAfterPrepass 1. This was caused by using FGlobalDynamic(Vertex/Index/Read)Buffer before it was committed (also commit was overlapping the parallel draw cmd list):
* IntiViews
* Dispatch prepass parallel cmd list (flickering, as global buffers weren't committed).
* InitShadows.
* Commit global buffers (race condition and potential crash).

This was fixed by:
* Renamed FNiagaraGlobalReadBuffer to FGlobalDynamicReadBuffer and moved it out from Niagara.
* Removed all global buffer singletons and placed them inside appropriate renderers as static members.
* They are also separated into two - one for InitViews and one for InitShadows, so we can dispatch prepass while writing to the shadow global buffers.
* All global buffers are now passed as a parameter and/or through mesh collector.

#jira UE-69167
#rb Rolando.Caloca
#rnx

[CL 4871865 by Krzysztof Narkowicz in Main branch]
2019-02-01 17:02:33 -05:00
Uriel Doyon
4c8308d1e4 Extended FFXSystemInterface framework to allow custom FX implementations.
NiagaraEmitterInstanceBatcher now derives from FFXSystemInterface and is hooked to the new implementation.
Removed the FComputeDispatcher framework (which was only used for Niagara hooks)
#jira UE-67618
#rb Matt.Collins

[CL 4869109 by Uriel Doyon in Main branch]
2019-02-01 14:31:45 -05:00
Chris Bunner
c77f129b29 Resolving Robomerge conflict from shelf 4866583.
#rb Robomerge

[CL 4867298 by Chris Bunner in Main branch]
2019-02-01 10:50:36 -05:00
anthony bills
ebf1480bce Pass down the shader format FName to IShaderFormat::NotifyShaderCooked
- Some platforms have multiple sub formats per IShaderFormat

#rb david.harvey
[FYI] luke.thatcher


#ROBOMERGE-SOURCE: CL 4859289 via CL 4863633

[CL 4864171 by anthony bills in Main branch]
2019-02-01 07:49:52 -05:00
Anthony Bills
9b34944d98 Disable gpuscene on Switch.
#rb ben.woodhouse
#jira UE-69067
#lockdown marcus.wassmer

[CL 4846674 by Anthony Bills in Dev-Rendering branch]
2019-01-30 14:46:57 -05:00
Marcus Wassmer
68f340a63c Merging //UE4/Dev-Main@4825910 to Dev-Rendering (//UE4/Dev-Rendering)
#rb none
KNOWN BROKEN DO NOT SYNC
#lockdown rolando.caloca

[CL 4827063 by Marcus Wassmer in Dev-Rendering branch]
2019-01-28 21:04:21 -05:00
Guillaume Abadie
0a66d8d57c Adds more comments in code about good practice for the use of render graph.
#rb brian.karis
#lockdown marcus.wassmer

[CL 4826194 by Guillaume Abadie in Dev-Rendering branch]
2019-01-28 19:45:40 -05:00
Yuriy ODonnell
e14bcf53e8 Implemented support for wave operation intrinsics (Shader Model 6.0) as an extension of SP_PCD3D_SM5, available when running on compatible hardware and D3D12.
Wave intrinsics can be enabled for a shader by providing CFLAG_WaveOperations to the compiler flags in ModifyCompilationEnvironment().
Run-time availability must be queried by checking GRHISupportsWaveOperations before trying to use a shader that uses wave intrinsics.

Removed all RHI_RAYTRACING define checks from D3DShaderCompiler.cpp.

#lockdown rolando.caloca
#rb rolando.caloca
#jira UE-69133

[CL 4824116 by Yuriy ODonnell in Dev-Rendering branch]
2019-01-28 13:41:26 -05:00
Yuriy ODonnell
419e972a82 Removed RHI_RAYTRACING define check from ShouldCompileRayTracingShadersForProject. It is now always compiled, but presence of r.RayTracing CVar is checked before accessing it.
#lockdown rolando.caloca
#rb rolando.caloca
#jira UE-67956

[CL 4823476 by Yuriy ODonnell in Dev-Rendering branch]
2019-01-28 12:14:36 -05:00
Yuriy ODonnell
d488ee7677 EShaderFrequency no longer depends on whether RHI_RAYTRACING is enabled. All frequencies are always defined. Some of the usage of SF_NumFrequencies is replaced with SF_NumStandardFrequencies to avoid memory and run-time overhead.
#lockdown rolando.caloca
#rb rolando.caloca
#jira UE-67956

[CL 4822693 by Yuriy ODonnell in Dev-Rendering branch]
2019-01-28 09:49:53 -05:00
Mark Satterthwaite
8ba414e181 Add an option "Force 32bit Floating Point Precision" to the iOS project settings to have the shader compiler promote all half-float operations to FP32 as some projects on iOS encounter rendering issues when fragment shader calculations run into half-float precision limits.
#jira UE-68654
#rb none
#lockdown marcus.wassmer

[CL 4804101 by Mark Satterthwaite in Dev-Rendering branch]
2019-01-24 15:59:40 -05:00
Guillaume Abadie
7132135b24 Fixes some MSVC static analysis warnings.
#rb none
#jira UE-67755
#lockdown marcus.wassmer

[CL 4802211 by Guillaume Abadie in Dev-Rendering branch]
2019-01-24 14:01:53 -05:00
Rolando Caloca
732810a13b DR - Copying //UE4/Dev-Main@4785067 to //UE4-DevRendering
#rb none
#rnx
#lockdown Marcus.Wassmer

[CL 4790611 by Rolando Caloca in Dev-Rendering branch]
2019-01-23 17:01:56 -05:00
Rolando Caloca
68b28fd7a5 DR - More removal of old macros
#rb none
#rnx

[CL 4772832 by Rolando Caloca in Dev-Rendering branch]
2019-01-22 17:37:24 -05:00
Rolando Caloca
e110a567a7 DR - More removal of ENQUEUE_UNIQUE_RENDER_COMMAND_ONEPARAMETER
#rnx
#rb none

[CL 4772039 by Rolando Caloca in Dev-Rendering branch]
2019-01-22 15:11:28 -05:00
Rolando Caloca
1da14c2de2 DR - Deprecate ENQUEUE_UNIQUE_RENDER_COMMAND and ENQUEUE_UNIQUE_RENDER_COMMAND_FOUR
#rb none
#rnx

[CL 4771576 by Rolando Caloca in Dev-Rendering branch]
2019-01-22 14:03:15 -05:00
Rolando Caloca
3830f03943 DR - Deprecate ENQUEUE_UNIQUE_RENDER_COMMAND_ FIVE and SIX
#rb none
#rnx

[CL 4770885 by Rolando Caloca in Dev-Rendering branch]
2019-01-22 12:27:56 -05:00
Guillaume Abadie
3d14d2577d Makes the errors checking render graph executions more precise.
#rb none

[CL 4768429 by Guillaume Abadie in Dev-Rendering branch]
2019-01-22 02:15:37 -05:00
Guillaume Abadie
a11fbac7b5 Fixes compilation failures in render graph.
#rb none

[CL 4767308 by Guillaume Abadie in Dev-Rendering branch]
2019-01-21 20:08:38 -05:00
Rolando Caloca
8bffefa0af DR - Disable GPU scene for Vulkan
#codereview krzysztof.narkowicz
#rb none
#rnx

[CL 4766707 by Rolando Caloca in Dev-Rendering branch]
2019-01-21 18:31:03 -05:00