RBX.lua.Camera (Object)
The Camera object defines a view into the 3D game world. In an instance of the game, each client has it's own Camera object associated with it. The Cameras exist only in the clients state residing in the Workspace, and must be operated on by a LocalScript. The Camera can be accessed through the CurrentCamera property of the Workspace.
A camera's state is defined in the following way:
- The CoordinateFrame property, of type CFrame, represents the the position of the camera.
- The Focus property represents the point the camera is looking at. This is currently always set to be directly in front of a character's head by the game engine.
- The CameraType property represents what action the game engine should perform on the Camera every frame.
- The FieldOfView property, a number, represents the angle the user can see out the sides of the Camera.
- An internal roll amount, which can be set by using the SetRoll method. This number (in radians) represents the angle in which the camera is rotated.
As of April 5th, 2012, the Camera object now supports manipulation by scripts. As a result you can now take near-complete control of the Camera using scripts. The view of a camera object can also be rotated to appear up-side-down by using the SetRoll method.
Setting the CoordinateFrame property to a CFrame value that includes math.huge in one axis will not affect the camera, but setting the Focus property as such will cause the camera to show a white screen. One used to be able to do this to lock the camera in place and prevent it from being moved by holding the right mouse button.
See Also
GetRoll( ) | |
Returns | float |
Description: | Returns the camera's current roll. Roll is defined in radians, and is stored as the delta from the camera's y axis default normal vector. |
Member of: | Camera |
PanUnits( ) | |
Returns | Undocumented |
Description: | Undocumented |
Member of: | Undocumented |
SetRoll( float rollAngle ) | |
Returns | nil |
Description: | The roll of the Camera, in radians. This sets how tilted the camera is on the Z-axis. Basically, this function "twists" the camera a specific amount. Note that the Camera's CameraType must be set to "Scriptable". |
Member of: | Camera |
TiltUnits( ) | |
Returns | Undocumented |
Description: | Undocumented |
Member of: | Undocumented |
Zoom( ) | |
Returns | Undocumented |
Description: | Undocumented |
Member of: | Undocumented |
Clone( ) | |
Returns | Instance |
Description: | Returns a clone of the object and its children, unless its Archivable property is false. The clone will have the same properties as the original object and the same descendants (except those with an Archivable property set to false). The clone's Parent will be nil. |
Member of: | Instance |
FindFirstChild( string name, bool recursive = false ) | |
Returns | Instance |
Description: | Returns the first child found with a name of name. Returns nil if no such child exists. If the optional recursive argument is true, will recursively descend the hierarchy while searching rather than only searching the immediate object. |
Member of: | Instance |
GetChildren( ) | |
Returns | table |
Description: | Returns a read-only table of the object's children. |
Member of: | Instance |
GetDebugId( int scopeLength ) | |
Returns | string |
Description: | Returns a coded string of the object's DebugId used internally by Roblox. |
Member of: | Instance |
GetFullName( ) | |
Returns | String path to object |
Description: | Returns a string with a dot (.) character separating a path of object hierarchy excluding "game". |
Member of: | Instance |
IsA( string className ) | |
Returns | bool |
Description: | Returns true if the Instance is that class or a subclass. |
Member of: | Instance |
IsAncestorOf( Instance descendant ) | |
Returns | boolean is ancestor |
Description: | Returns true if the object is an ancestor of descendant. |
Member of: | Instance |
IsDescendantOf( Instance ancestor ) | |
Returns | bool |
Description: | Returns true if the object is an descendant of ancestor. |
Member of: | Instance |
Destroy( ) | |
Returns | nil |
Description: | Sets the Parent property to nil, locks the Parent property, disconnects all connections and calls Destroy() on all children. |
Member of: | Instance |
ClearAllChildren( ) | |
Returns | nil |
Description: | Removes all descendants of the Instance, but leaves the Instance itself. |
Member of: | Instance |
CameraSubject | |
Property | Instance |
Description | A Model, Part, or Humanoid for the camera to look at. Setting this property will override the Focus property. |
Member of | Camera |
CameraType | |
Type | CameraType |
Description | Sets how the camera behaves. See all the camera behavior options you have here |
Member of | Camera |
CoordinateFrame | |
Property | CFrame |
Description | This is a CFrame whose position defines where the camera is at, however it does not define which way it points. For that you need the Focus property. |
Member of | Camera |
Focus | |
Type | CFrame |
Description | Sets the position the Camera is pointing towards. If the CameraSubject is defined, it is set automatically to a CFrame at the position of the CameraSubject pointing towards the camera's CFrame. |
Member of | Camera |
FieldOfView | |
Type | float |
Description | Sets the angle of the camera's field of view, between 20 and 80 degrees. |
Member of | Camera |
Name | |
Type | string |
Description | The name of the object, which is often used to identify it in the context of its parent. Note that names are not unique identifiers; multiple children of an object may share the same name. In a script where you want to access an object using a name, for example, game.Workspace["Brick"], the first object found with that name is that object. This "first object" can be found in the Explorer menu.Names are great for showing a very brief title or summary of an object. |
Member of | Instance |
Parent | |
Type | Instance |
Description | The hierarchical parent of the object. When no scripts hold references to an object, it will still be maintained as long as it's parent is set to an object which does have references to it, either by other objects or scripts. The toplevel DataModel object (the one referred to as the "game" by scripts) has no parent, but always has a reference held to it by the game engine, and exists for the duration of a session. |
Member of | Instance |
Archivable | |
Type | bool |
Description | Sets whether or not the object is saved when publishing or saving to file. Also sets whether or not the object is clonable. |
Member of | Instance |
ClassName | |
Type | string |
Description | A unique string per type of Instance. Should only be used as a unique identifier, as it does not reveal any information about nature of the type hierarchy the type is in. For this use, see IsA. |
Member of | Instance |
RobloxLocked | |
Type | bool |
Description | If true, the object and its descendants cannot be indexed or edited by a Script or LocalScript and will throw an error if it is attempted. |
Member of | Instance |
DataCost | |
Type | int |
Description | How much saving this instance with SaveInstance will add to DataComplexity |
Member of | Instance |
AncestryChanged ( Instance child, Instance parent ) | |
Description | Fired when an ancestor of the Instance the event which is a member of child has its parent changed to parent. |
---|---|
Member of: | Instance |
Changed ( Property property ) | |
Description | Fired whenever a property of the object changes. |
---|---|
Member of: | Instance |
ChildAdded ( Instance child ) | |
Description | Fired after a child is added. |
---|---|
Member of: | Instance |
ChildRemoved ( Instance child ) | |
Description | Fired when a child is removed from the object. |
---|---|
Member of: | Instance |
DescendantAdded ( Instance descendant ) | |
Description | Fired when a descendant is added to the object. |
---|---|
Member of: | Instance |
DescendantRemoving ( Instance descendant ) | |
Description | Fired when a descendant is being removed. |
---|---|
Member of: | Instance |