Material Paste Bug

Reproduction Steps:

Open the project and load this material:

/Script/Engine.MaterialInstanceConstant’/Game/EasyRain/EpicDemoContent/EasyRainDemo/Materials/M_waterDrops_Inst.M_waterDrops_Inst’

Follow the operations shown in the video: Material Paste Bug.mp4

After batch copying and pasting the entire group, parameters (Droplets/Leaks) exhibit unexpected behavior. However, copying and pasting the problematic parameter (Droplets/Leaks) individually works as intended.

Hello [mention removed]​

Thank you for reaching out and bringing this issue to our attention.

I was able to reproduce the issue you described.

Thank you for taking the time to share a repro project and making a video.

Regarding the unexpected behavior, I’ve noticed that the Droplets/Leaks parameter, when disabled, disables other parameters from the list.

It looks like, although the copied parameter is enabled, once pasted, it is set as disabled.

I did some experimentation, and when we “Copy All Parameters In Group”, this is what we end up with:

Bypass Droplets/Leaks.Override=False,Droplets/Leaks.Override=True,Droplets/Leaks.Value="True",World-Aligned Mapping.Override=True,World-Aligned Mapping.Value="True",Dripping Droplets.Override=True,Dripping Droplets.Value="True",Global Effect.Override=True,Global Effect.Value="0.400000",Rain Patter Effect.Override=True,Rain Patter Effect.Value="True",Rain Patter Speed.Override=True,Rain Patter Speed.Value="0.500000",Droplets Amount.Override=True,Droplets Amount.Value="2.000000",Droplets Normal Intensity.Override=True,Droplets Normal Intensity.Value="0.500000",Leaks Normal Intensity.Override=True,Leaks Normal Intensity.Value="0.200000",LeaksSpeed.Override=True,LeaksSpeed.Value="1.000000",Scale.Override=True,Scale.Value="(R=0.300000,G=1.000000,B=1.000000,A=1.000000)",Wet Albedo Darkening.Override=True,Wet Albedo Darkening.Value="0.000000",General Wetness.Override=True,General Wetness.Value="1.000000"It looks like the issue is due to the space in the “Bypass Droplets/Leaks” variable name, the lack of added quotes, and the subsequent variable having the same name as the one before, minus the Bypass part.

This works fine:

"Bypass Droplets"/Leaks.Override=False,Droplets/Leaks.Override=True,Droplets/Leaks.Value="True",World-Aligned Mapping.Override=True,World-Aligned Mapping.Value="True",Dripping Droplets.Override=True,Dripping Droplets.Value="True",Global Effect.Override=True,Global Effect.Value="0.400000",Rain Patter Effect.Override=True,Rain Patter Effect.Value="True",Rain Patter Speed.Override=True,Rain Patter Speed.Value="0.500000",Droplets Amount.Override=True,Droplets Amount.Value="2.000000",Droplets Normal Intensity.Override=True,Droplets Normal Intensity.Value="0.500000",Leaks Normal Intensity.Override=True,Leaks Normal Intensity.Value="0.200000",LeaksSpeed.Override=True,LeaksSpeed.Value="1.000000",Scale.Override=True,Scale.Value="(R=0.300000,G=1.000000,B=1.000000,A=1.000000)",Wet Albedo Darkening.Override=True,Wet Albedo Darkening.Value="0.000000",General Wetness.Override=True,General Wetness.Value="1.000000"Basically, when pasting, the word “Bypass” is being discarded, and then Unreal sets Droplets/Leaks.Override to false, and instead of immediately setting it back to true when it receives the command a second time, it is being ignored.

So the root cause is the lack of quotes.

I’ll report this issue and share a trackable link once I have it.

All the best,

[mention removed]​

Hello [mention removed]​

I’ve made a JIRA report at: Unreal Engine Issues and Bug Tracker (UE\-315178)

Please note that it can take some time to be made publicly accessible.

We don’t provide updates on EPS, but if you would like to track the resolution, check the link for the status.

I believe we don’t have further actionable issues, so I’ll close the case.

Feel free to reply if you have anything else to add.

All the best,

[mention removed]​