Recently I’ve attempted to tackle this issue again, (mainly trying to pick apart Egomoose’s module and strip it down to what I actually needed, though I kinda got stumped at trying to uncouple the actual “portal connection” logic, which I don’t need (also tried this with the “mirror” module which had other issues))
Essentially just putting a world into a viewportframe, and having a surfacegui act as a perspective accurate “window” to that area
(The portal example for reference, which “projects” the view onto a surfacegui viewportframe)
I know there’s more logic involved than just setting the viewportframe currentcamera to the workspace camera because just doing that causes this
I think I have a better shot now at trying to write this from scratch than picking someone else’s module apart but I fundamentally don’t understand how to solve the issue
I can tell there’s CFrame and FOV adjustment involved but am completely failing to wrap my head around the actual math needed
(Please tell me if you need more information I feel like I’m having 500 brain aneurysms at once and can barely even coherently type right now)