An easy and simple camera system

u’know, when you surf in free models, youll either find broken camera models, or a very laggy camera system that uses viewportframes, like tons of them, well this model is not a viewportframe camera system, instead its a normal camera system that just forces your CFrame to a camera.

i also made it very easy to use, you can make as much cameras as you want


first, you should see a model saying “geo’ssecuritycamera”
, put the Cameras folder and the “securitycameratrigger” in workspace

Okay, now you want to add more cameras as 3 built in cameras is obviously not enough, you can just clone it, put it whereever you want, but the important thing is it must be in the Cameras folder, and then you MUST rename it to Camera_...Yourcameranumber

example of what it should be like

but thats not all, there’s an attribute in the camera part called nameofarea

what is this attribute? its the attribute which should show the area’s name, so you might wanna edit the attribute to whatever you like.

here’s an video for an example

Don’t like the gui?
you can edit it as well! but the gui hierarchy and the names of its descendants must be exactly the same

just drag this to startergui and when your done editing,put it back in the script

So what are you waiting for? Get the model now!1!
Security camera system

How useful is this?

How useful is this?
  • 1
  • 2
  • 3
  • 4
  • 5

0 voters

any feedback or criticism is welcome (just don’t make it destructive)


So any feedback? Or will this just die?

I mean, I don’t think it needs any feedback, it’s exactly what it’s meant to be.


true, i guess the only thing ill add is rotating camera support

did you use free models for this or plugins at all?

none of them. i made it all handmade

1 Like

I dont mean to be rude, but you can easily make this by just going through a table, setting the camera cframe. May I ask for a good use for this?

1 Like

Hello, this is a good post but I can answer it.

well it’s pretty obvious, you can make a security camera as the toolbox is filled with broken camera models

I’m not sure what you mean by that, could you elaborate?

I mean like, you could make a table with all the parts, then go through each index on the click, and set the camera CFrame to the current part.

1 Like

This would simply annoy people because you can just rename the part to add a camera.

Just look at this, what’s the problem with it?

1 Like

you model was very useful for me. i learned many things with you script, like that smart use of concatenation and attributes

1 Like

Thanks for your feedback!

I under stand what you mean by this, and @luisgamercooI231fan, I under stand what you mean to. But @geometricalC2123 is fixing a problem that I have run into before, the cameras in the tool box are very bad.

1 Like

ah ok. I understand. I was just looking at it from an advanced scripter perspective. My bad. Also, @geometricalC2123, looking around at the source code, I saw you used concatenation. I recommend you use string.format instead. It’s way better than concatenation.

string.format("my epic word is: %s", "fish")

Wowie I never saw string.format!! However I am not sure how I could use string format on the FindFirstChild?

you can just do this:

thing:FindFirstChild(string.format("is your mom fat? %s","yes"))



Also the update will come very late, sorry for that news

like that, you just never closed the string.format


also, you can do way more than just “%s”. Here’s one example

string.format("haha I ate someone called %p", "bob") ---> "bob"

%p adds the word between a “” thing. Which you can’t do with concatenation

Cool! I’ll be sure to add this in the rotating camera support update, thanks for this amazing thing

yeah no problem, also, you shouldn’t be using tostring for this type of thing. Because amazing roblox recently made an update where sometimes numbers would output with a million decimals when you use tostring. Assuming the tostring input is a number. So if it does return with a million numbers, the find first child wont work. So we can do string.format instead.

FindFirstChild(string.format("Camera_%s", string.format(currentcamera, "%.f"))) -- "%.f" will return the number without decimals inside a string form.