Files
UnrealEngineUWP/Engine/Source/Runtime/Launch
Mark Satterthwaite 9ee803f916 Batched shader precompilation & predraw for Mac OS X which can be more aggressive behind loading screens & purged before entering an actual level, to reduce the time taken to reach an interactive state without hitches in the actual game.
- With 'r.UseAsyncShaderPrecompilation' enabled shader precompilation is now executed on the render thread alongside the predraw, not as a single operation on loading the binary cache.
- The setting 'r.TargetPrecompileFrameTime' controls what the target frame rate should be when performing async. precompile and the shader cache will try and adjust how many shaders to precompile to stay within this limit, with a minimum of 1 shader per frame.
- The shader cache is now updated during initial loading to take advantage of the time spent loading essential data to do as much of the precompile as possible.
- It is possible to accelerate the shader cache's precompilation by specifying 'r.AccelPredrawBatchTime' and 'r.AccelTargetPrecompileFrameTime' to larger values, then calling FShaderCache::BeginAcceleratedBatching() to start using the more aggressive values and FShaderCache::EndAcceleratedBatching() to go back to the normal values.
- Calling FShaderCache::FlushOutstandingBatches() will force completion of all outstanding batched precompilation and predraws during the next frame.

[CL 2706016 by Mark Satterthwaite in Main branch]
2015-09-25 07:55:46 -04:00
..
2015-09-15 18:41:34 -04:00