Resources management

Hi guys,

I have global database (ScriptObject) which holds references to all my materials for some reason.
Database is attached to one GameObject in scene but i’m not using all materials in that scene. Unity will load all textures that are referenced in my materials on startup or when i add material to renderer?

When that scene is loaded, all references are resolved and put in memory.