Get DynamicMaterialInstance from Mesh?

As you see on the screenshot, it fails for my case. Even though i have assigned it a MID (material instance dynamic) at construction time using CreateDynamicMaterialInstance node.

i can argue regards keeping the reference to MID, because reference exists in RAM 24/7, while the operation that demands it only occurs rarely on special events. doesn’t worth it to store a variable for that.

Not sure why you would even say something like this. Perhaps you should look into what a pointer is to understand its memory footprint. If performance is of utmost importance, consider abandoning blueprints altogether and do things directly in C++. For example, the cost of that cast is most likely an order of magnitude larger that storing a pointer.

I come from the C++ world and i can definitely state i understand how pointers work.
a pointer is and implicit int type with 8 bytes length on x64 platforms, means if i have 1000 instances of an actor with this (mostly) idle pointer, i waste 8kb of RAM for practically nothing. should you use it more often and you end up with tens of wasted megabytes that could be used for other more important stuff.