Currently, as a Roblox Developer, it’s impossible create a functioning camera system that can project onto a screen, keeping in-world lighting intact.
You can sorta do this with ViewportFrames, but they lack the functionality to make it convincing.
My suggestion is for a Screen object that can go inside of a SurfaceGui (or a normal ScreenGui).
Some usecases for this would be: Portals and Security Cameras.
The other suggestion is to of course add an option to ViewportFrames to use in-world lighting. But I’m also pretty sure ViewportFrames were never intended for this use case anyway.
Perhaps either feature can be limited to a set number of “screens” like Highlights to help with performance when needed.