Hey, can anyone help me? I’m working on a main menu, and I have a 3D background with a video playing on a TV in a loop. I want the camera to zoom in on the TV when you hit “Play,” and it should play a different video when the zoom is done. I’m using a Level Sequence for the zoom effect.
Hey @diamondann! Welcome to the forums!
So I assume a lot of this is on the Level Blueprint? I guess what is important is making sure the events that fire are on the Level Blueprint, and then you pull in the Blueprints that are needed to do the thing you want. So, for instance, you activate the sequence and then once the sequence is over, fire an event that gets the TV, gets the 3D background, and sets the material on the 3D background to the thing you want.
Hope that helps! Anything more than that and we for sure need to see some screenshots or something! ![]()
Hey @diamondann, sorry for the late reply!
So it seems there you have a “NewVar 1” variable that you haven’t named yet, that is your Media player, right? Well you can drag off of that and do whatever you need to with that. Stop, open source, and change the video is likely what we need to do! You can put that on your “Play Sequence” line off of the “On Clicked”. ![]()
Hope that helps!
Hey @diamondann! Did you manage to get it figured out? Let us know how it’s going! ![]()
chaining videos with a zoom transition is two problems: the video switch lifecycle and the visual transition. separate them.
video switch lifecycle: the safe order is on end playback (bind the delegate) then close, then open the next source, then play. opening a new source while the previous one is still tearing down is the classic freeze or black frame; the on end playback delegate fires before teardown completes, so a small delay (or on media opened binding) between close and open keeps it smooth. if the videos are short and known, pre-opening is limited (one open session per player), so the single-player sequential pattern is the supported one.
the zoom transition:
- the zoom itself is cheapest as a widget animation on the image holding the video texture: scale from 1 to 1.2 with an ease curve over the switch point. the video keeps playing underneath, so the motion reads as one continuous shot.
- for a real crossfade between two videos, use two media players and two media textures, blend between two images (or a material lerping two texture samples) driven by a scalar during the transition, then swap which player is active and pause the idle one. this is the standard double-buffer for menu video transitions.
- playback rate trick: a subtle rate bump (1.0 to 1.15) during the zoom sells the punch-in feel; set rate is supported by most sources but check the info tab capabilities for your files.
- if the zoom target is a different menu screen, do the zoom on the widget before you switch, hold the last frame (pause the player at the zoom end), switch sources during the zoom where the motion masks the swap, then resume. motion masking makes the cut invisible.
structure note: keep the video list as data (array of media sources + transition durations) with one small state machine, rather than nested delays in the widget; it scales to any number of menu sequences and the transitions stay consistent.

