It is possible to bind delegates to static members of a struct or a class (not relative to a specific object). Here i set up a test delegate to randomly change a color of a material.
First we setup our struct
as we declared a static member in a header file, we need to define it in a CPP file to avoid duplicated symbols, so put this line in any CPP file once
Then we can broadcast and bind functions to the delegate like you said.
Hope that helps!