Why blueprint does not execute when called from UMG but does on its own

I am calling a custom function which uses Ultra Dynamic Sky and Weather on runtime. The weathe preset applies successfully when manually called via blueprint. But when I make a UMG and call the function via a UI it does not update runtime eventhough all the variables are getting applied. i.e. Ultra dynamic actor gets variables runtime but level does not update runtime. Please help!