You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
Before, the precaching state was queried and passed by users of the cache (through SetComputePipelineState and SetGraphicsPipelineState). This is quite invasive and hard to maintain, and sometimes led to the incorrect state being reported. For example, global shaders being precached would not report the precaching status correctly. With this change, the state is checked directly at the time of PSO creation in a single place. This should ensure robustness of the tracking and reporting logic in case new systems get the ability to precache PSOs. The PSO precaching state is used for: * Instructing the file cache to exclude precached PSOs (if enabled). * Logging runtime hitches. * Labelling PSO creation scopes in Unreal Insights. Some other improvements: * Reduced scopes of the lock used for precaching tasks tracking. * Do not collect global shaders to precache if PSO precaching is disabled. * Small code cleanups. Note this is separate from PSO precaching validation tracking. #rb Kenzo.Terelst #tests tested locally with Unreal Insights [CL 33271265 by daniele vettorel in ue5-main branch]