Rect Light. Using a Render Target as the Source Texture

I am sending video from OBS (using spout) to a Render Target in Unreal Engine, then applying this to the Rect Light > Source Texture.

My issue is that the spout video feed does not update the Rect Light after it’s initially applied. It remains static. If I change settings in the Rect Light (example Intensity) it will update the light from the current video frame and then goes static again.

I’ve tested Media Textures and the Rect Light updates dynamically with the video playing.

Am I doing something wrong or is this a limitation of using Render Targets on Rect Light Source Texture?

Hi there @Milozuk

Welcome to the Unreal Engine Community Forum! I personally haven’t ran into this. But, I do recall seeing someone have this problem(Maybe on Reddit? I’m not sure where it was) and they actually changed from Rect Light over to Emissive material.

Hey thanks for the reply!

My initial approach has been using an emissive material. Problem is I need to hide the object in the camera view. It’s a very niche edge case.

In the short clip below (hopefully uploads correctly, I’m a newbie here). The entire top of the keyboard is rendered in Unreal and sent to OBS over spout. The image behind me is also rendered in UE, but is being shown with a projector. To fake the reflection and light of the projector I used a plane with an emissive material and a Render Target.

Using UE 5.3 (now Deprecated) Raytracing Reflections I was able to hide the object but still capture the emissive material and object in the camera. I’m attempting to update to 5.5 and thought using Rect Light with Source Texture as a Render Target would be a good alternative, but I need the light to be dynamic as the scene behind me changes a lot.

I’m going to try and use the Nvidia RTX branch to see if I can achieve the result in a different way. Failing that I guess I’ll stick with 5.3 until I find another solution.