In my previous article I’ve described how to add and animate a Media Plate actor in Unreal Engine 5.1, but sadly the object doesn’t give us shadows as we got with the traditional image sequence workflow out of the box. Thankfully there’s a fix for that in the form of various tick boxes nobody tells us about, so here’s what you need to do in order for this thing to render with shadows and handsome reflections.
Shadows (easy option)
Shadows are disabled on Media Plate actors by default. There are two ways to make them show, the easiest of which is to enable two-sided-ness on the material. On a single sided material, we don’t see shadows.
On a Material Instance, you’ll find the option permanently exposed on the Details Panel. Enable the option (left), then enable the fact that you want to see this material from both sides (right). It’s a two tickbox affair.
On a regular material there’s only a single tick box. However, making a material two sided doesn’t always produce shadows (I have no idea why), so if this method doesn’t work for you, please read on.
Shadows (complicated option)
OK this sounds more complex than it is, bear with me. First, our project needs to support transparency. Head over to Project Settings and change this post processing option (search for alpha and switch from None to Linedwear color space). This requires an engine restart:
Next, the default material for the Media Plate actor needs to be tweaked. It’s tricky because it’s a little hidden under the hood. You can get there by double-clicking the plate’s material, which opens the instance, then double-clicking the parent material from there. Or you can open this material directly under Engine/Plugins/Media Plate Content/M_MediaPlate
It is wise to make a copy of this before making a change, otherwise your updates may not save properly (engine and plugin content seems to be protected). Here’s what the material looks like by default:
To enable shadows, we need to switch the Blend Mode from Translucent to Masked, then move the alpha output over from Opacity to Opacity Mask. Save the material to apply the changes.
Now all that remains is to enable Dynamic Shadows on our Media Plate actor.
Reflections
Reflections are enabled by default on our Media Plate object, but I hear we can make them look better with a Post Process volume. Set it to infinite extent, then search for reflections and enable the following options.
In all honesty, enabling this and the many other Lumen related options doesn’t produce significantly different results to my eyes, but your mileage may vary.
Unfortunately it doesn’t work on 5.2 🙁
I’ve just upgraded my project to 5.3 and noticed this too. Bummer! Let’s see if we can figure this out, there has to be a way to make it work. If I find a solution, I’ll let you know here 👍
Any luck here? Tried this method in 5.3 and I’m getting no shadows cast. Has to be some sort of bug at this point.
After so many tests I can tell you that the shadows can only be cast from an object with depth, I guess UE has a limitation with flat planes and rendered shadows. You can either position a proxy/dummy object behind the plate and let it cast the shadow (easy on static plates, more difficult on moving ones), or you can create a 3D Media Plate object of sorts. Imagine a flat cube with the plate UVs on the front. Turns out that casts a shadow. I might do a video on how to make that happen, or perhaps even turn it into a product of sorts. Or – here’s hoping – this gets fixed in a future UE update. Hope this helps!
Thank you for this Explain.
In UE 5.3
For Dynamic shadows on Media Plate or plane SM object
– Select the media plate object and search for “Shadow cache invalidation behavior” and set it to – always
Make sure you have made a material that references the Media Texture asset of the footage.
– set material to masked, unlit & two sided (optional)
Cheers,
b
Thanks for sharing! I’ve just tried it but I still don’t see any shadows. I’ll keep experimenting!