You should use ViewportFrame combined with raycasting to simulate a camera feed. However, keep in mind that ViewportFrame has several limitations:
No support for real physics, particles, or post-processing effects.
Limited lighting capabilities—it does not accurately render shadows, AO, or GI.
Lower texture and rendering resolution compared to the main viewport, which can make detailed scenes look worse.
In some cases, these limitations may not be a problem and can even positively affect the atmosphere of the experience by creating a more stylized, eerie, or retro aesthetic. The reduced lighting and lower resolution can help achieve a grainy, VHS-like, or night-vision effect, which might enhance immersion in horror or paranormal-themed games.
However, if you require higher image quality and better lighting, I recommend using layered ViewportFrames to enhance depth and sharpness, while adjusting lighting settings within the constraints of what ViewportFrame supports.