Dynamic Material Instance with Decal make external link bug

With setup shown in picture I’ve got messages about some external references to material instance when I try to save map and given actor is placed on that map. Basically - i can’t save a map.
I think in 4.10 it worked fine.

Hi Gomo,

  • Does this occur in a clean, blank project with no additional content or is it limited to one project?
  • What steps can I take to reproduce this on my end?
  • What is your material setup?

Just checked - it occurs also in blank project.
Steps to reproduce:

  • Create blank BP actor.
  • add decal component
  • create material with decal domain and scalar parameter for opacity
  • create material instance from that decal material
  • assign material instance to decal component
  • reproduce BP flow from picture from first post
  • place actor in the scene
  • try to save the scene.
    Material in tested case was just one scalar parameter connected to opacity.

Do you have an asset this is occurring in I’d be able to take a look at? Thus far I have not been able to reproduce this on my end.

link text
In attachment is entire content (3 files) of the blank project I created to debug this.
It’s created based on BP-based project.

Unfortunately I have not been able to reproduce this error on my end. Do you have any specific steps I can take with these asets to recreate the error?

It’s weird - I’ll ask some of my friends I they can reproduce this - maybe it is something wrong with my engine or something.

Try running “fix up redirectors” on your content browser by right clicking on the Content folder and pressing “Fix up redirectors”. This should remove any lingering redirects from moving/renaming assets that may be causing the error to occur.

Didn’t work.

Do you have any other steps I can take to reproduce this error on my end? If you are comfortable with it and upload the project where this is occurring I’ll be happy to take a look and see if I can reproduce it in the environment it is already occurring in.

link text
Entire project in attachment

Try setting your blueprint decal variable to the original material, save, then switch back to the material instance. Does this fix the error on your end?

It looks from my end like a minor corruption of the variable’s pointer, and if this resolves the error , as I have not been able to reproduce this in any other situation in any other project. Please try this and let me know if your error resolves.

It worked - but only for debug project - in main project where I use it it still doesn’t work, but I have the a bit more complicated shader - I’ll try to mess around a little bit with it.

Unfortunately it didn’t work - in main project BP after various still changes can’t be saved on the scene.
I tried to make a copy of the blueprint - after deleting and adding decal component - it worked with copied BP but not with the original - maybe because it is a parent of BP hierarchy?

I have another test that may address this error. Try replacing your Create Dynamic Material Instance node with a node directly connected to the decal, instead of looking for the Decal Material. You can see the change I made in the image below and this seemed to address the error:

OK, It finally worked. I feel stupid for not trying that.
Thanks a lot!

I’m happy to hear this worked for you. I am marking this thread as answered for tracking purposes.