PhysicsService

Show Deprecated
Not Creatable
Service

PhysicsService primarily contains methods for working with collision groups which define whether a set of parts may or may not collide with parts in other collision groups. You can register a collision group through RegisterCollisionGroup() and assign parts to it by setting those parts' CollisionGroup property to the name of the collision group.

Creating, deleting, and modifying collision relationships between collision groups is limited to server-side Scripts.

See Collision Filtering for usage details in Studio and within scripts.

Summary

Methods

Properties

Methods

CollisionGroupSetCollidable

()

Parameters

name1: string
name2: string
collidable: boolean

Returns

()

CollisionGroupsAreCollidable

Parameters

name1: string
name2: string

Returns

GetMaxCollisionGroups


Returns

GetRegisteredCollisionGroups


Returns

IsCollisionGroupRegistered

Parameters

name: string

Returns

RegisterCollisionGroup

()

Parameters

name: string

Returns

()

Code Samples

PhysicsService:RegisterCollisionGroup

local PhysicsService = game:GetService("PhysicsService")
local collisionGroupBall = "CollisionGroupBall"
local collisionGroupDoor = "CollisionGroupDoor"
-- Register collision groups
PhysicsService:RegisterCollisionGroup(collisionGroupBall)
PhysicsService:RegisterCollisionGroup(collisionGroupDoor)
-- Assign parts to collision groups
script.Parent.BallPart.CollisionGroup = collisionGroupBall
script.Parent.DoorPart.CollisionGroup = collisionGroupDoor
-- Set groups as non-collidable with each other and check the result
PhysicsService:CollisionGroupSetCollidable(collisionGroupBall, collisionGroupDoor, false)
print(PhysicsService:CollisionGroupsAreCollidable(collisionGroupBall, collisionGroupDoor)) --> false

RenameCollisionGroup

()

Parameters

from: string
to: string

Returns

()

UnregisterCollisionGroup

()

Parameters

name: string

Returns

()

Events