In short, I want to achieve a non-Euclidean effect between the “outside” and the “inside” of an elevator, which is challenging to think about how to do this. Some images show what I mean:
the inside of the elevator from the outside perspective
The main way *I can think of doing this is to have a viewport to display the non-euclidean inside (relative to the camera), and when the player approaches the viewport they get teleported to the larger location.
This sort of idea is utilised in the following resource:
They’ve provided an uncopylocked place that you can mess around with.
(The scale of work needed for implementing euclidean can be a lot, hence why I’m providing just a description of how you would do it, plus a resource)
Would it work with more people though? For example, if 5 players were heading to the elevator, would this non-euclidean effect still work and would they join it with no problems?
ehhhhhhhhh.
It might encounter some more issues and not be overly performant, but overall it should be possible.
(As Roblox doesn’t allow us to directly output the view of a camera into a GUI object, we’re limited in what we can achieve regarding Non-euclidean worlds (and portals))
@SeargentAUS just wondering, how would it not be performant? Aren’t ViewportFrames rendered on each client? I also don’t see how the addition of some players might significantly ruin its performance.
Also, I came across ViewportFrame Masking a while ago. I haven’t checked out the other portal implementations on this forum, but this resource’s uncopylocked place had pretty cool implementations.
What can work is merging viewport frames + teleporting. Since the elevator is constantly moving, I could place a camera in front of the elevator door, and another one inside the elevator, but the elevator itself is actually in another place. But I don’t know how could I do this since the door would open/close