Changing scalability to low forces total shader recompile

I’m setting up menus for the game. One, of course, is the scalability menu. Setting it to Low ( or just doing this in the editor ) causes a recompilation of all shaders in the project.

It’s just like the shader recompile you get when you change engine versions.

My question is, is this normal? Are my players going to have to wait 45 minutes to change scalability?

As far as I know it’s normal and I don’t think the end user would have to wait for it to compile. I think all shaders for all levels are taken care of when you build the game but I am not 100% sure.

This is correct actually… Make it an answer and I’ll tick it.

When you make a shipping build, all the compiling is taken care of during the export process, so it doesn’t happen for the end user - as MMMaris say ( and I have since found out ).

You said “a shipping build”. Did you use it as general term for “build, cook, package” game or did you mean the “target configuration” (build configuration) needs to be set explicit to “shipping”?
We deliver also packaged games for testing usage in “target configuration”, “development” and “test”. And I hope clients do not have to compile shaders when switching quality settings on these .“target configuration”.

Hey ClockworkOcean, I have the same question: When switch scalability settings in PIE game, my game starts recompile. When build a game for “test” or “developer” build did you tested that this is not happening?
Consider to make a official answer to the question.

I literally mean ‘shipping’ build, ie, final product.

I can’t recall the results for development builds, I’m afraid you’ll need to test that…

EDIT: You know the setting ‘cook by the book’? I’d also use that to be sure. Otherwise the packaging attempts to only cook things it thinks haven’t been cooked recently. At least, that’s what I assume, but there is a total lack of documentation on this part of the engine…