ViewportFrame Camera System

I wouldn’t suggest raycasting for that sort of problem. If anything a simple spatial partitioning system will work much better

Make the Map a model named ‘Map’ in workspace. If the map never changes, we don’t bother performing checks on it. This saves tons of performance, allowing it to work far more smoothly.

Hello there. I saw your camera system and I fell in love with it. I did try your system and added multiple cameras and monitors, and also made a script that hides the players’ names. One thing that I noticed is that for a reason, it teleports the player where the monitor for the camera is when they spawn in. Because I am not the best at scripting and for sure do not know how to use the ViewPortFrame, is there a way that you can change the scripts so that it still works, but does not teleport the player to the screen? Thank you for your time.

1 Like

Can’t get on my PC rn, and I forget where exactly but in one of the scripts it simply CFrames the player. I did it so that you end up by the screen so you can see it when you play test.

1 Like

I found it. It was at the bottom of the script. I love your system and it is something that I was searching for a long time. I didn’t get a chance to use it in a game yet (did test it and made some changes for better design and setting up), but if you do not mind, I will be more than happy to do so. Thank you very much for your help. Have a great day!


Hi I love your camera system but whenever I delete the map model in your open source file you sent us, then it just stops working. What’s the issue for that?

It tries to do the map, but it doesn’t exist. Read the error message.

Oh so if I just copy the camera system into my game it should work?

I feel like you didn’t even read the code, you’re just looking for an out-of-the-box solution to copy paste.

Complicated systems like cameras don’t really have that, and this is as close as I can get.

If you have a static map, you can put it in a folder named Map inside workspace, and then copy pasting should work, given you have workspace.CameraPart and workspace.Screen.

Also, I do plan on remaking this whole thing to be far more user-friendly some time in the future.


Just found this post, this is such a neat way of using Viewport Frames on the surfaceGUI.


Hey there!

First of all, sorry for activating and old thread.

I tried using it in my own game, everything rendered fine. Although, the frames didn’t update afterwards; The changes I made:

  • Change Workspace.Map to Workspace
  • Made a check because you cannot clone the terrain object.

Thanks in advance for your help on how to fix in the newest version :slight_smile:

Hey there,

Looks like I’m working for you and you found the module I’m using. :eyes:
You changed the map to the workspace, meaning you declare every part or model as a static model.

To get around this:

  1. Define the static model(s).
  2. Render all moving objects continuously (for example if you’ve a racing game, karts).

I’m not guaranteeing that my solution is perfect. I haven’t tested it and so will test things out with the module.


How are you able to use viewportframes on a part? I thought surface guis didn’t support viewportframes.

They’ve always supported it…?

Yes, SurfaceGuis can have ViewportFrames, however, you must place it in StarterGui and have its Adornee on the part you want it to show on.

1 Like

Hey, thanks for using my system!

This is the old version, and my new work is much better.

I recommend you switch to using this one instead. It gives you way more control over how things are rendered.

If you have questions on it, or need help with the setup, feel free to DM me!

@marketmanager1 @chrisopdemobiel

Edit: Rewrote this demo file to use the new handler system!

Security Camera System.rbxl (848.3 KB)
Note: This is uploaded with the module in it, and is therefore an outdated version of the module. The newer versions are backwards compatible, so just switching to the updated edition will still run in this example. If you plan on taking the module, I suggest you take the latest version of the module instead of copying the file out of this example.

This is the same map (I added balls rolling around for demo), but the code went from hundreds of lines to just 41!


Hey BoatBomber, is there a way to use more cameras and more screens? Because I tried changing it but every time I do it send all cameras screens to the same screen and glitched the view of it, could you help me making it so I can use more then 5 cameras and each a own screen?

You can use mutable screens in the new handler.

1 Like

Seems to be some sort of problem for my game, when I copied the following;


The screen is blank and when I play it, it shows nothing but just a fabric part, anyone know whats the problem here?



I’m trying to use this as a mirror. So when a player looks or moves to the left, the reflection will as well instead of moving to the right. Any advice on how to do so? I can’t exactly figure it out.

1 Like