Name the LocalScript CameraScript and add a comment at the top. Create variables for the camera and the player that can be used throughout the script.Creates a top-down camera for each player. Should be used as a LocalScript. Variables for the camera and player. Local camera = workspace.CurrentCamera. G = grab tool, G+mid mouse button = front back. Shift+F free camera. Try ctrl + alt + num0 for quick placing the camera to 3d view. Sorry for my english, have fun. Blender v2.49 - v2.5.
Top-down cameras allow players to see more of the game game at once. This gives players more time to react to incoming enemies.
Script or LocalScript
Each player will need their own camera, and the camera needs to run smoothly without lag. In this case, a LocalScript is the right choice for script type because players should only see their own camera, and you don’t want cameras to be laggy.
- In StarterPlayer > StarterPlayerScripts add a LocalScript.
Set Up the Camera Script
- Name the LocalScript CameraScript and add a comment at the top.
- Create variables for the camera and the player that can be used throughout the script.
- Under the camera and player variables, add a variable named
CAMERA_OFFSET
that will control how far away the camera is from the player.
'Constant' Variables
How To Move Your Screen In Roblox
The CAMERA_OFFSET
variable is written in all caps to help set it apart as a constant variable. Constants are variables that should stay the same throughout the entirety of the script, even when the program is run.
Scripting the Camera Movement
The camera needs to follow the player smoothly around the arena. If the camera is choppy, players will think your game is laggy. To make the camera smooth, you’ll create a function called onRenderStep
that runs 60 times every second. Since the onRenderStep happens so often, the game will update often to move the camera smoothly. To use onRenderStep, the script needs to access RunService, which gives you functions related to time.
Set up Variables and the Function
- To add RunService, at the top of CameraScript, above the camera and player variables,
type:local RunService = game:GetService('RunService')
- Under
CAMERA_OFFSET
, add the following code so the script can make changes to the camera.
- Under
CAMERA_OFFSET
, add the following code so the script can make changes to the camera.
Move the Player Camera
- On the next line, create a function named
onRenderStep()
to update the camera about every 60 seconds.
- In the function, create an if then statement to see if a new character has loaded into the game.
- Within the if statement, add the following variables to get the player’s position, and the new camera position.
- Within the if statement, add the following variables to get the player’s position, and the new camera position.
- After setting the camera position, set the camera’s
CoordinateFrame
to the new camera position and have it always point towards theplayerPosition
.
- At the bottom of CameraScript, add the following code to connect
onRenderStep
to RunService.
- Playtest the game. The camera should now be looking down on the player.
Finished Camera Code »
These documents are licensed by Roblox Corporation under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. Roblox, Powering Imagination, and Robux are trademarks of Roblox Corporation, registered in the United States and other countries.
How To Make Roblox Videos
Previous