* Still disabled as Metal requires a horrible workaround/hack
* Remove GSupportsGSRenderTargetLayerSwitchingToMips workaround
[CL 2295640 by Rolando Caloca in Main branch]
- Removed default shader platform parameter from GetGlobalShaderMap()
- Added an inline overload of GetGlobalShaderMap() that takes a feature level instead, and translates to the correct shader platform
- Cached feature level on FSceneView for faster access
- Cached shader map on FViewInfo for faster access
- Cached featurelevel/shadermap on rendering composition graph execution context, for faster access
Fixed a couple of crashes when switching feature level dynamically
- Needed to allow certain shader permutations to be generated if feature level was ES2, but still on a PC platform. (i.e. hitproxy shaders, and basepass shaders used by editor primitives system)
#codereview Nick.Penwarden
[CL 2275937 by Graeme Thornton in Main branch]
* Static sky lights are now allowed, baked into lightmap
* Stationary sky lights are baked into low quality lightmap
* Baked sky lighting can only support emissive input to avoid a feedback loop
* Adaptive refinement quadtree nodes are now pooled as Lightmass builds were 7x slower with the FBinnedAllocator otherwise
* Specializations of SHBasisFunction which saves 10% of lightmass build times with sky lighting
* Dark texels have their directionality's contribution to the lightmap min and max dampened
[CL 2055868 by Daniel Wright in Main branch]
#proj core
#branch UE4
#summary Removed header groups, removed some redundant includes and replaced with forward declarations. Fixed compilation errors.
[CL 2055361 by Mikolaj Sieluzycki in Main branch]
#proj core
#branch UE4
#summary Removed header groups, removed some redundant includes and replaced with forward declarations. Fixed compilation errors.
[CL 2054304 by Mikolaj Sieluzycki in Main branch]
#branch UE4
#project Renderer
#summary Further fix for sky light irradiance on Nvidia cards under OS X - missed a code path that also needed changing.
#change Add another code path for when GSupportsGSRenderTargetLayerSwitchingToMips is false in ComputeDiffuseIrradiance as is the case on OS X & is required for Nvidia cards which can't do this (though AMD & Intel cards can).
reviewedby michael.trepka
[CL 2050049 by Mark Satterthwaite in Main branch]
#branch UE4
#project Core
#summary Fix the sky light irradiance on Nvidia cards under OS X - they suffer from their inability to switch cubemap face in a geometry shader.
#change Add a code path for when GSupportsGSRenderTargetLayerSwitchingToMips is false in ComputeDiffuseIrradiance as is the case on OS X & is required for Nvidia cards which can't do this (though AMD & Intel cards can).
reviewedby michael.trepka
[CL 2049934 by Mark Satterthwaite in Main branch]