which should result in showing 0 frames
I believe that “Set Game Camera Cut This Frame” means that “the camera did a jump, rather than a move, so don’t assume smooth camera motion.” There are some comments in the code in this area mentioning motion blur and scene occluders as possibly affected objects; maybe MIP map loading and shadow smoothing also. It also apparently affects the audio player; probably for Doppler reasons? And looks like distance fields and Lumen also use it, and there’s a constant shader parameter that essentially every shader can read to know whether the camera “teleported” or not.
I e, the meaning is “hint to the renderer that there was a camera cut/jump;” it is not “cut out the camera rendering.”
If you want the screen to go black, you can do that with a post processing material, or just add a fat black quad across the viewport using a UI Widget.
If you want rendering from another point of view, you can create a new camera object in the new location, and call Set View Target With Blend on the player controller, with a blend time of 0. Or move the current camera object to where you want it to be rendered from, and call the “Cut” function to tell the system to avoid smooth-movement assumptions.
When you say “one extra frame,” it’s not clear to me what that really means.
Do you mean that the camera went through the portal, and is actually rendering from behind the portal, even when you already moved it?
Or do you just mean that simulation said “player went through portal” and the rendering is still from the in-front-of-portal position? Is this perhaps related to triple buffering, where the displayed frame is actually somewhat behind the simulated frame all the time?
Also, the near clip plane can make it so that even a camera that’s very close to a wall, may render through the wall, because the wall is so close as to be clipped out.