# BasePart

Roblox Engine API class from Roblox Studio 0.744.0.7441077 (version-7aaa6838d36c4448).

- Inherits from, nearest first: [PVInstance](https://rapi.sleaze.dev/classes/PVInstance.md), [Instance](https://rapi.sleaze.dev/classes/Instance.md), [Object](https://rapi.sleaze.dev/classes/Object.md)
- Subclasses: [CornerWedgePart](https://rapi.sleaze.dev/classes/CornerWedgePart.md), [FormFactorPart](https://rapi.sleaze.dev/classes/FormFactorPart.md), [Terrain](https://rapi.sleaze.dev/classes/Terrain.md), [TriangleMeshPart](https://rapi.sleaze.dev/classes/TriangleMeshPart.md), [TrussPart](https://rapi.sleaze.dev/classes/TrussPart.md), [VehicleSeat](https://rapi.sleaze.dev/classes/VehicleSeat.md)
- Tags: Not browsable, Not creatable
- Memory category: Instances
- HTML page: https://rapi.sleaze.dev/classes/BasePart/
- Roblox documentation: https://create.roblox.com/docs/reference/engine/classes/BasePart

The abstract base class for in-world objects that physically interact.

## Properties

### BrickColor

```luau
BasePart.BrickColor: BrickColor
```

- Tags: Not replicated, Load only

Determines the color of a part.

### CastShadow

```luau
BasePart.CastShadow: boolean
```

Determines whether or not a part casts a shadow.

### Color

```luau
BasePart.Color: Color3
```

- Tags: Not replicated, Load only

Determines the color of a part.

### Color3uint8

```luau
BasePart.Color3uint8: Color3uint8
```

- Tags: Hidden, Not scriptable

### Material

```luau
BasePart.Material: Enum.Material
```

- Tags: Simulation access

Determines the texture and default physical properties of a part.

### MaterialVariant

```luau
BasePart.MaterialVariant: string
```

- Tags: Not replicated, Simulation access

The name of [`MaterialVariant`](https://rapi.sleaze.dev/classes/MaterialVariant.md).

### MaterialVariantSerialized

```luau
BasePart.MaterialVariantSerialized: string
```

- Tags: Hidden, Not scriptable

### Reflectance

```luau
BasePart.Reflectance: number
```

Determines how much a part reflects the skybox.

### Transparency

```luau
BasePart.Transparency: number
```

Determines how much a part can be seen through (the inverse of part opacity).

### brickColor

```luau
BasePart.brickColor: BrickColor
```

- Tags: Deprecated, Not replicated, Load only
- Use instead: [`BasePart.BrickColor`](https://rapi.sleaze.dev/classes/BasePart.md)

**Deprecated:** This deprecated property is an old Camel Case variant of the Pascal Case [`BasePart.BrickColor`](https://rapi.sleaze.dev/classes/BasePart.md), which should be used instead.

### AssemblyAngularVelocity

```luau
BasePart.AssemblyAngularVelocity: Vector3
```

- Tags: Not replicated, Load only, Simulation access

The angular velocity of the part's assembly.

### AssemblyCenterOfMass

```luau
BasePart.AssemblyCenterOfMass: Vector3
```

- Tags: Read only, Simulation access

The center of mass of the part's assembly in world space.

### AssemblyLinearVelocity

```luau
BasePart.AssemblyLinearVelocity: Vector3
```

- Tags: Not replicated, Load only, Simulation access

The linear velocity of the part's assembly.

### AssemblyMass

```luau
BasePart.AssemblyMass: number
```

- Tags: Read only, Simulation access

The total mass of the part's assembly.

### AssemblyRootPart

```luau
BasePart.AssemblyRootPart: BasePart
```

- Tags: Read only, Simulation access

A reference to the root part of the assembly.

### DraggingV1

```luau
BasePart.DraggingV1: boolean
```

- Tags: Hidden, Not scriptable

### EnableFluidForces

```luau
BasePart.EnableFluidForces: boolean
```

- Tags: Simulation access

Used to enable or disable aerodynamic forces on parts and assemblies.

### NetworkOwnershipRule

```luau
BasePart.NetworkOwnershipRule: Enum.NetworkOwnership
```

- Tags: Hidden, Not scriptable

### AudioCanCollide

```luau
BasePart.AudioCanCollide: boolean
```

- Tags: Simulation access

Determines whether the part will physically interact with audio simulation, similar to [`CastShadow`](https://rapi.sleaze.dev/classes/BasePart.md) for lighting.

### CanCollide

```luau
BasePart.CanCollide: boolean
```

- Tags: Simulation access

Determines whether a part may collide with other parts.

### CanQuery

```luau
BasePart.CanQuery: boolean
```

- Tags: Simulation access

Determines whether the part is considered during spatial query operations.

### CanTouch

```luau
BasePart.CanTouch: boolean
```

- Tags: Simulation access

Determines if [`Touched`](https://rapi.sleaze.dev/classes/BasePart.md) and [`TouchEnded`](https://rapi.sleaze.dev/classes/BasePart.md) events fire on the part.

### CollisionGroup

```luau
BasePart.CollisionGroup: string
```

- Tags: Not replicated, Simulation access

Describes the name of a part's collision group.

### CollisionGroupReplicate

```luau
BasePart.CollisionGroupReplicate: string
```

- Tags: Hidden, Not scriptable, Roblox script security

### CollisionGroupId

```luau
BasePart.CollisionGroupId: number
```

- Tags: Deprecated, Not replicated, Simulation access
- Use instead: [`BasePart.CollisionGroup`](https://rapi.sleaze.dev/classes/BasePart.md)

**Deprecated:**

Describes the automatically set ID number of a part's collision group.

### LocalTransparencyModifier

```luau
BasePart.LocalTransparencyModifier: number
```

- Tags: Hidden, Not replicated

Determines a multiplier for [`BasePart.Transparency`](https://rapi.sleaze.dev/classes/BasePart.md) that is only visible to the local client.

### Locked

```luau
BasePart.Locked: boolean
```

- Tags: Simulation access

Determines whether a part is selectable in Studio.

### NetworkIsSleeping

```luau
BasePart.NetworkIsSleeping: boolean
```

- Tags: Hidden, Not scriptable

### NetworkOwnerV3

```luau
BasePart.NetworkOwnerV3: SystemAddress
```

- Tags: Hidden, Not scriptable

### ResizeableFaces

```luau
BasePart.ResizeableFaces: Faces
```

- Tags: Read only

Describes the faces on which a part may be resized.

### ResizeIncrement

```luau
BasePart.ResizeIncrement: number
```

- Tags: Read only

Describes the smallest change in size allowable by the [`Resize()`](https://rapi.sleaze.dev/classes/BasePart.md) method.

### Rotation

```luau
BasePart.Rotation: Vector3
```

- Tags: Not replicated, Load only, Simulation access

The rotation of the part in degrees for the three axes.

### RotVelocity

```luau
BasePart.RotVelocity: Vector3
```

- Tags: Deprecated, Hidden, Simulation access
- Use instead: [`BasePart.AssemblyAngularVelocity`](https://rapi.sleaze.dev/classes/BasePart.md)

**Deprecated:** This property is deprecated. Use [`AssemblyAngularVelocity`](https://rapi.sleaze.dev/classes/BasePart.md) instead.

Determines a part's change in orientation over time.

### SpecificGravity

```luau
BasePart.SpecificGravity: number
```

- Tags: Deprecated, Read only
- Use instead: [`BasePart.SpecificGravity`](https://rapi.sleaze.dev/classes/BasePart.md)

**Deprecated:** This item is deprecated. See [`BasePart.CustomPhysicalProperties`](https://rapi.sleaze.dev/classes/BasePart.md) to see how to configure the physical properties of BaseParts. Do not use it for new work.

The ratio of the part's density to the density of water determined by the [`BasePart.Material`](https://rapi.sleaze.dev/classes/BasePart.md).

### Velocity

```luau
BasePart.Velocity: Vector3
```

- Tags: Deprecated, Hidden, Simulation access
- Use instead: [`BasePart.AssemblyLinearVelocity`](https://rapi.sleaze.dev/classes/BasePart.md)

**Deprecated:** This property is deprecated. Use [`AssemblyLinearVelocity`](https://rapi.sleaze.dev/classes/BasePart.md) instead.

Determines a part's change in position over time.

### Anchored

```luau
BasePart.Anchored: boolean
```

- Tags: Simulation access

Determines whether a part is immovable by physics.

### CenterOfMass

```luau
BasePart.CenterOfMass: Vector3
```

- Tags: Read only, Simulation access

Describes the world position in which a part's center of mass is located.

### CurrentPhysicalProperties

```luau
BasePart.CurrentPhysicalProperties: PhysicalProperties
```

- Tags: Read only

Indicates the current physical properties of the part.

### CustomPhysicalProperties

```luau
BasePart.CustomPhysicalProperties: PhysicalProperties
```

- Tags: Simulation access

Determines several physical properties of a part.

### Mass

```luau
BasePart.Mass: number
```

- Tags: Read only, Simulation access

Describes the mass of the part, the product of its density and volume.

### Massless

```luau
BasePart.Massless: boolean
```

- Tags: Simulation access

Determines whether the part contributes to the total mass or inertia of its rigid body.

### ReceiveAge

```luau
BasePart.ReceiveAge: number
```

- Tags: Hidden, Read only

Time since last recorded physics update.

### RootPriority

```luau
BasePart.RootPriority: number
```

The main rule in determining the root part of an assembly.

### siz

```luau
BasePart.siz: Vector3
```

- Tags: Hidden, Not replicated, Not scriptable, Write only, Load only

### size

```luau
BasePart.size: Vector3
```

- Tags: Hidden, Not scriptable

### Elasticity

```luau
BasePart.Elasticity: number
```

- Tags: Deprecated, Hidden, Not replicated, Load only

**Deprecated:** This is only one of multiple physics-related properties. It has been deprecated in favor of [`BasePart.CustomPhysicalProperties`](https://rapi.sleaze.dev/classes/BasePart.md), which combines these properties into one.

Used to control the Elasticity of the part, but it no longer does anything.

### Friction

```luau
BasePart.Friction: number
```

- Tags: Deprecated, Hidden, Not replicated, Load only

**Deprecated:** This is only one of multiple physics-related properties. It has been deprecated in favor of [`BasePart.CustomPhysicalProperties`](https://rapi.sleaze.dev/classes/BasePart.md), which combines these properties into one.

Used to control the Friction of the part, but now it no longer does anything.

### PivotOffset

```luau
BasePart.PivotOffset: CFrame
```

- Tags: Simulation access

Specifies the offset of the part's pivot from its [`CFrame`](https://rapi.sleaze.dev/index/types/CFrame.md).

### BackSurface

```luau
BasePart.BackSurface: Enum.SurfaceType
```

Determines the type of surface for the back face of a part.

### BottomSurface

```luau
BasePart.BottomSurface: Enum.SurfaceType
```

Determines the type of surface for the bottom face of a part.

### FrontSurface

```luau
BasePart.FrontSurface: Enum.SurfaceType
```

Determines the type of surface for the front face of a part.

### LeftSurface

```luau
BasePart.LeftSurface: Enum.SurfaceType
```

Determines the type of surface for the left face of a part.

### RightSurface

```luau
BasePart.RightSurface: Enum.SurfaceType
```

Determines the type of surface for the right face of a part.

### TopSurface

```luau
BasePart.TopSurface: Enum.SurfaceType
```

Determines the type of surface for the top face of a part.

### BackParamA

```luau
BasePart.BackParamA: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the first parameter for the SurfaceType on the Back face of a part.

### BackParamB

```luau
BasePart.BackParamB: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the second parameter for the SurfaceType on the Back face of a part.

### BackSurfaceInput

```luau
BasePart.BackSurfaceInput: Enum.InputType
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the kind of input for the Back face of a part.

### BottomParamA

```luau
BasePart.BottomParamA: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the first parameter for the SurfaceType on the Bottom face of a part.

### BottomParamB

```luau
BasePart.BottomParamB: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the second parameter for the SurfaceType on the Bottom face of a part.

### BottomSurfaceInput

```luau
BasePart.BottomSurfaceInput: Enum.InputType
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the kind of input for the Bottom face of a part.

### FrontParamA

```luau
BasePart.FrontParamA: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the first parameter for the SurfaceType on the Front face of a part.

### FrontParamB

```luau
BasePart.FrontParamB: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the second parameter for the SurfaceType on the Front face of a part.

### FrontSurfaceInput

```luau
BasePart.FrontSurfaceInput: Enum.InputType
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the kind of input for the Front face of a part (-Z direction).

### LeftParamA

```luau
BasePart.LeftParamA: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the first parameter for the SurfaceType on the Left face of a part.

### LeftParamB

```luau
BasePart.LeftParamB: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the second parameter for the SurfaceType on the Left face of a part.

### LeftSurfaceInput

```luau
BasePart.LeftSurfaceInput: Enum.InputType
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the kind of input for the Left face of a part.

### RightParamA

```luau
BasePart.RightParamA: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the first parameter for the SurfaceType on the Right face of a part.

### RightParamB

```luau
BasePart.RightParamB: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the second parameter for the SurfaceType on the Right face of a part.

### RightSurfaceInput

```luau
BasePart.RightSurfaceInput: Enum.InputType
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the kind of input for the Right face of a part (-X direction).

### TopParamA

```luau
BasePart.TopParamA: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the first parameter for the SurfaceType on the Top face of a part.

### TopParamB

```luau
BasePart.TopParamB: number
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the second parameter for the SurfaceType on the Top face of a part.

### TopSurfaceInput

```luau
BasePart.TopSurfaceInput: Enum.InputType
```

- Tags: Deprecated, Hidden

**Deprecated:**

Determines the kind of input for the Top face of a part (+Y direction).

### CFrame

```luau
BasePart.CFrame: CFrame
```

- Tags: Simulation access

Determines the position and orientation of the [`BasePart`](https://rapi.sleaze.dev/classes/BasePart.md) in the world.

### ExtentsCFrame

```luau
BasePart.ExtentsCFrame: CFrame
```

- Tags: Read only, Simulation access

The [`CFrame`](https://rapi.sleaze.dev/index/types/CFrame.md) of the physical extents of the [`BasePart`](https://rapi.sleaze.dev/classes/BasePart.md).

### ExtentsSize

```luau
BasePart.ExtentsSize: Vector3
```

- Tags: Read only, Simulation access

The actual physical size of the [`BasePart`](https://rapi.sleaze.dev/classes/BasePart.md) as regarded by the physics engine.

### Orientation

```luau
BasePart.Orientation: Vector3
```

- Tags: Hidden, Not replicated, Simulation access

Describes the rotation of the part in the world.

### PhysicsRepRootPart

```luau
BasePart.PhysicsRepRootPart: BasePart
```

- Tags: Hidden, Not scriptable, Roblox engine security

### PhysicsRepRootRef

```luau
BasePart.PhysicsRepRootRef: InstanceRef
```

- Tags: Hidden, Not scriptable, Roblox engine security

### Position

```luau
BasePart.Position: Vector3
```

- Tags: Hidden, Not replicated, Simulation access

Describes the position of the part in the world.

### ReplicationPV

```luau
BasePart.ReplicationPV: ReplicationPV
```

- Tags: Hidden, Not scriptable, Roblox engine security

### Size

```luau
BasePart.Size: Vector3
```

- Tags: Not replicated, Load only, Simulation access

Determines the dimensions of a part (length, height, width).

## Methods

### AngularAccelerationToTorque

```luau
BasePart:AngularAccelerationToTorque(angAcceleration: Vector3, angVelocity: Vector3? = Vector3.zero): Vector3
```

- Tags: Simulation access

Returns the torque needed to achieve a given angular acceleration on this part's assembly, optionally accounting for gyroscopic effects.

Parameters:

- `angAcceleration`: The desired angular acceleration vector in world space.
- `angVelocity`: The current angular velocity of the assembly in world space. Defaults to `(0, 0, 0)`. Supply the assembly's angular velocity to account for gyroscopic effects.

Returns: A [`Vector3`](https://rapi.sleaze.dev/index/types/Vector3.md) representing the world-space torque required to produce the specified angular acceleration.

### ApplyAngularImpulse

```luau
BasePart:ApplyAngularImpulse(impulse: Vector3)
```

- Tags: Simulation access

Apply an angular impulse to the assembly.

Parameters:

- `impulse`: An angular impulse vector to be applied to the assembly.

### ApplyImpulse

```luau
BasePart:ApplyImpulse(impulse: Vector3)
```

- Tags: Simulation access

Apply an impulse to the assembly at the assembly's `center of mass`.

Parameters:

- `impulse`: A linear impulse vector to be applied to the assembly.

### ApplyImpulseAtPosition

```luau
BasePart:ApplyImpulseAtPosition(impulse: Vector3, position: Vector3)
```

- Tags: Simulation access

Apply an impulse to the assembly at specified position.

Parameters:

- `impulse`: An impulse vector to be applied to the assembly.
- `position`: The position, in world space, to apply the impulse.

### BindToCollisionSummaries

```luau
BasePart:BindToCollisionSummaries(callback: (...any) -> ...any): RBXScriptConnection
```

- Tags: Capabilities: Basic

### CanCollideWith

```luau
BasePart:CanCollideWith(part: BasePart): boolean
```

- Tags: Thread safe, Simulation access

Returns whether the parts can collide with each other.

Parameters:

- `part`: The specified part being checked for collidability.

Returns: Whether the parts can collide with each other.

### CanSetNetworkOwnership

```luau
BasePart:CanSetNetworkOwnership(): ...any
```

- Tags: Simulation access

Checks whether you can set a part's network ownership.

Returns: Whether you can modify or read the network ownership and the reason.

### GetClosestPointOnSurface

```luau
BasePart:GetClosestPointOnSurface(position: Vector3): Vector3
```

- Tags: Simulation access

Returns the closest point on the part's surface to the given point.

Parameters:

- `position`: The world-space point to find the closest surface point to.

Returns: The closest point on the part's surface in world space.

### GetConnectedParts

```luau
BasePart:GetConnectedParts(recursive: boolean? = false): { Instance }
```

- Tags: Thread safe

Returns a table of parts connected to the object by any kind of rigid joint.

Parameters:

- `recursive`: A table of parts connected to the object by any kind of `joint`.

Returns: An array of `BaseParts` connected to this part by rigid joints. If `recursive` is true, includes all parts in the assembly.

### GetJoints

```luau
BasePart:GetJoints(): { Instance }
```

- Tags: Thread safe, Simulation access

Return all Joints or Constraints that is connected to this Part.

Returns: An array of all Joints or Constraints connected to the Part.

### GetMass

```luau
BasePart:GetMass(): number
```

- Tags: Thread safe, Simulation access

Returns the value of the [`Mass`](https://rapi.sleaze.dev/classes/BasePart.md) property.

Returns: The part's mass.

### GetNetworkOwner

```luau
BasePart:GetNetworkOwner(): Instance
```

- Tags: Thread safe, Simulation access

Returns the current player who is the network owner of this part, or `nil` in case of the server.

Returns: The current player who is the network owner of this part, or `nil` in case of the server.

### GetNetworkOwnershipAuto

```luau
BasePart:GetNetworkOwnershipAuto(): boolean
```

- Tags: Thread safe, Simulation access

Returns true if the game engine automatically decides the network owner for this part.

Returns: Whether the game engine automatically decides the network owner for this part.

### GetNoCollisionConstraints

```luau
BasePart:GetNoCollisionConstraints(): { Instance }
```

- Tags: Simulation access

Returns the enabled [`NoCollisionConstraint`](https://rapi.sleaze.dev/classes/NoCollisionConstraint.md) objects currently registered for this part in its physics world.

Returns: An array of the enabled [`NoCollisionConstraint`](https://rapi.sleaze.dev/classes/NoCollisionConstraint.md) objects currently registered for this part in its physics world.

### GetPhysicsCost

```luau
BasePart:GetPhysicsCost(): number
```

- Tags: Roblox script security, Thread safe

### GetTouchingParts

```luau
BasePart:GetTouchingParts(): { Instance }
```

- Tags: Simulation access

Returns a table of all [`BasePart.CanCollide`](https://rapi.sleaze.dev/classes/BasePart.md) true parts that intersect with this part.

Returns: A table of all parts that intersect and can collide with this part.

### GetVelocityAtPosition

```luau
BasePart:GetVelocityAtPosition(position: Vector3): Vector3
```

- Tags: Thread safe, Simulation access

Returns the linear velocity of the part's assembly at the given position relative to this part.

Parameters:

- `position`: The world-space position at which to compute the assembly's linear velocity.

Returns: A [`Vector3`](https://rapi.sleaze.dev/index/types/Vector3.md) representing the linear velocity of the assembly at the specified world-space position.

### IntersectAsync

```luau
BasePart:IntersectAsync(parts: { Instance }, collisionfidelity: Enum.CollisionFidelity? = Enum.CollisionFidelity.Default, renderFidelity: Enum.RenderFidelity? = Enum.RenderFidelity.Automatic): Instance
```

- Tags: Yields, Capabilities: CSG

Creates a new [`IntersectOperation`](https://rapi.sleaze.dev/classes/IntersectOperation.md) from the overlapping geometry of the part and the other parts in the given array.

Parameters:

- `parts`: The objects taking part in the intersection.
- `collisionfidelity`: The `CollisionFidelity` value for the resulting [`IntersectOperation`](https://rapi.sleaze.dev/classes/IntersectOperation.md).
- `renderFidelity`: The `RenderFidelity` value of the resulting [`PartOperation`](https://rapi.sleaze.dev/classes/PartOperation.md).

Returns: Resulting [`IntersectOperation`](https://rapi.sleaze.dev/classes/IntersectOperation.md) with default name **Intersect**.

### IsGrounded

```luau
BasePart:IsGrounded(): boolean
```

- Tags: Thread safe, Simulation access

Returns true if the object is connected to a part that will hold it in place (eg an [`Anchored`](https://rapi.sleaze.dev/classes/BasePart.md) part), otherwise returns false.

Returns: Whether the object is connected to a part that will hold it in place.

### Resize

```luau
BasePart:Resize(normalId: Enum.NormalId, deltaAmount: number): boolean
```

- Tags: Simulation access

Changes the size of an object just like using the Studio resize tool.

Parameters:

- `normalId`: The side to resize.
- `deltaAmount`: How much to grow/shrink on the specified side.

Returns: Whether the part is resized.

### SetNetworkOwner

```luau
BasePart:SetNetworkOwner(playerInstance: Player? = nil)
```

- Tags: Simulation access

Sets the given player as network owner for this and all connected parts.

Parameters:

- `playerInstance`: The player being given network ownership of the part.

### SetNetworkOwnershipAuto

```luau
BasePart:SetNetworkOwnershipAuto()
```

- Tags: Simulation access

Lets the game engine dynamically decide who will handle the part's physics (one of the clients or the server).

### SubtractAsync

```luau
BasePart:SubtractAsync(parts: { Instance }, collisionfidelity: Enum.CollisionFidelity? = Enum.CollisionFidelity.Default, renderFidelity: Enum.RenderFidelity? = Enum.RenderFidelity.Automatic): Instance
```

- Tags: Yields, Capabilities: CSG

Creates a new [`UnionOperation`](https://rapi.sleaze.dev/classes/UnionOperation.md) from the part, minus the geometry occupied by the parts in the given array.

Parameters:

- `parts`: The objects taking part in the subtraction.
- `collisionfidelity`: The `CollisionFidelity` value for the resulting [`UnionOperation`](https://rapi.sleaze.dev/classes/UnionOperation.md).
- `renderFidelity`: The `RenderFidelity` value of the resulting [`PartOperation`](https://rapi.sleaze.dev/classes/PartOperation.md).

Returns: Resulting [`UnionOperation`](https://rapi.sleaze.dev/classes/UnionOperation.md) with default name **Union**.

### TorqueToAngularAcceleration

```luau
BasePart:TorqueToAngularAcceleration(torque: Vector3, angVelocity: Vector3? = Vector3.zero): Vector3
```

- Tags: Simulation access

Returns the angular acceleration that would result from applying a given torque to this part's assembly, optionally accounting for gyroscopic effects.

Parameters:

- `torque`: The torque vector applied to the assembly in world space.
- `angVelocity`: The current angular velocity of the assembly in world space. Defaults to `(0, 0, 0)`. Supply the assembly's angular velocity to account for gyroscopic effects.

Returns: A [`Vector3`](https://rapi.sleaze.dev/index/types/Vector3.md) representing the resulting angular acceleration in world space.

### UnionAsync

```luau
BasePart:UnionAsync(parts: { Instance }, collisionfidelity: Enum.CollisionFidelity? = Enum.CollisionFidelity.Default, renderFidelity: Enum.RenderFidelity? = Enum.RenderFidelity.Automatic): Instance
```

- Tags: Yields, Capabilities: CSG

Creates a new [`UnionOperation`](https://rapi.sleaze.dev/classes/UnionOperation.md) from the part, plus the geometry occupied by the parts in the given array.

Parameters:

- `parts`: The objects taking part in the union with the calling part.
- `collisionfidelity`: The `CollisionFidelity` value for the resulting [`UnionOperation`](https://rapi.sleaze.dev/classes/UnionOperation.md).
- `renderFidelity`: The `RenderFidelity` value of the resulting [`PartOperation`](https://rapi.sleaze.dev/classes/PartOperation.md).

Returns: Resulting [`UnionOperation`](https://rapi.sleaze.dev/classes/UnionOperation.md) with default name **Union**.

### BreakJoints

```luau
BasePart:BreakJoints()
```

- Tags: Deprecated, Simulation access

**Deprecated:** This method is deprecated. To break specific joints, iterate over the part's connections using [`BasePart:GetJoints()`](https://rapi.sleaze.dev/classes/BasePart.md) and call [`Instance:Destroy()`](https://rapi.sleaze.dev/classes/Instance.md) on the joints you want to remove.

Breaks any surface connection with any adjacent part, including [`Weld`](https://rapi.sleaze.dev/classes/Weld.md) and other [`JointInstance`](https://rapi.sleaze.dev/classes/JointInstance.md).

### GetRenderCFrame

```luau
BasePart:GetRenderCFrame(): CFrame
```

- Tags: Deprecated

**Deprecated:** This item is been deprecated since interpolation is now applied to the [`CFrame`](https://rapi.sleaze.dev/index/types/CFrame.md) directly. Do not use it for new work.

OBSOLETE. Returns a CFrame describing where the part is being rendered at.

Returns: The [`CFrame`](https://rapi.sleaze.dev/index/types/CFrame.md) representing where the part is being rendered, which is now equivalent to the part's [`CFrame`](https://rapi.sleaze.dev/index/types/CFrame.md).

### GetRootPart

```luau
BasePart:GetRootPart(): Instance
```

- Tags: Deprecated, Thread safe, Simulation access
- Use instead: [`BasePart.AssemblyRootPart`](https://rapi.sleaze.dev/classes/BasePart.md)

**Deprecated:**

Returns the base part of an assembly of parts.

Returns: The base part of an assembly (a collection of parts connected together).

### MakeJoints

```luau
BasePart:MakeJoints()
```

- Tags: Deprecated

**Deprecated:** SurfaceType based joining is deprecated, do not use MakeJoints for new projects. `WeldConstraints` and `HingeConstraints` should be used instead.

Creates a joint on any side of the object that has a surface ID that can make a joint.

### breakJoints

```luau
BasePart:breakJoints()
```

- Tags: Deprecated
- Use instead: [`BasePart.BreakJoints`](https://rapi.sleaze.dev/classes/BasePart.md)

**Deprecated:** This deprecated function is a variant of [`BasePart:BreakJoints()`](https://rapi.sleaze.dev/classes/BasePart.md) which should be used instead.

### getMass

```luau
BasePart:getMass(): number
```

- Tags: Deprecated
- Use instead: [`BasePart.GetMass`](https://rapi.sleaze.dev/classes/BasePart.md)

**Deprecated:** This Camel Case property has been deprecated in favor of its Pascal Case variant, [`BasePart:GetMass()`](https://rapi.sleaze.dev/classes/BasePart.md).

### makeJoints

```luau
BasePart:makeJoints()
```

- Tags: Deprecated

**Deprecated:** This deprecated function is a variant of [`BasePart:MakeJoints()`](https://rapi.sleaze.dev/classes/BasePart.md) which should be used instead.

### resize

```luau
BasePart:resize(normalId: Enum.NormalId, deltaAmount: number): boolean
```

- Tags: Deprecated
- Use instead: [`BasePart.Resize`](https://rapi.sleaze.dev/classes/BasePart.md)

**Deprecated:** This deprecated function is a variant of [`BasePart:Resize()`](https://rapi.sleaze.dev/classes/BasePart.md) which should be used instead.

## Events

### NetworkOwnerChanged

```luau
BasePart.NetworkOwnerChanged: RBXScriptSignal<(systemAddress: SystemAddress)>
```

- Tags: Hidden, Local user security

### Touched

```luau
BasePart.Touched: RBXScriptSignal<(otherPart: BasePart)>
```

Fires when a part touches another part as a result of physical movement.

### TouchEnded

```luau
BasePart.TouchEnded: RBXScriptSignal<(otherPart: BasePart)>
```

Fires when a part stops touching another part as a result of physical movement.

### LocalSimulationTouched

```luau
BasePart.LocalSimulationTouched: RBXScriptSignal<(part: BasePart)>
```

- Tags: Deprecated

**Deprecated:** This event is deprecated in favor of [`BasePart.Touched`](https://rapi.sleaze.dev/classes/BasePart.md).

Fires on the local client when another part comes in contact with this part.

### OutfitChanged

```luau
BasePart.OutfitChanged: RBXScriptSignal<()>
```

- Tags: Deprecated

**Deprecated:** This event is deprecated. Do not use it for new work.

Fires when the part's appearance changes due to a [`Shirt`](https://rapi.sleaze.dev/classes/Shirt.md).

### StoppedTouching

```luau
BasePart.StoppedTouching: RBXScriptSignal<(otherPart: BasePart)>
```

- Tags: Deprecated
- Use instead: [`BasePart.TouchEnded`](https://rapi.sleaze.dev/classes/BasePart.md)

**Deprecated:** This event is deprecated in favor of [`BasePart.TouchEnded`](https://rapi.sleaze.dev/classes/BasePart.md), which should be used instead.

Fires on the local client when a part stops touching another part.

## Inherited members

- From [PVInstance](https://rapi.sleaze.dev/classes/PVInstance.md): `Pivot Offset`, `Origin`, `GetPivot`, `PivotTo`
- From [Instance](https://rapi.sleaze.dev/classes/Instance.md): `Archivable`, `archivable`, `Attributes`, `AttributesReplicate`, `AttributesSerialize`, `HistoryId`, `Name`, `Parent`, `PredictionMode`, `PropertyStatusStudio`, `RobloxLocked`, `SerializedOverrides`, `SourceAssetId`, `Tags`, `UniqueId`, `numExpectedDirectChildren`, `DataCost`, `Capabilities`, `DefinesCapabilities`, `IsInSandbox`, `Sandboxed`, `AddTag`, `ClearAllChildren`, `Clone`, `Destroy`, `FindFirstAncestor`, `FindFirstAncestorOfClass`, `FindFirstAncestorWhichIsA`, `FindFirstChild`, `FindFirstChildOfClass`, `FindFirstChildWhichIsA`, `FindFirstDescendant`, `GetActor`, `GetAttribute`, `GetAttributeChangedSignal`, `GetAttributes`, `GetChildren`, `GetDebugId`, `GetDescendants`, `GetFullName`, `GetStyled`, `GetStyledPropertyChangedSignal`, `GetTags`, `HasTag`, `IsAncestorOf`, `IsDescendantOf`, `IsPropertyModified`, `QueryDescendants`, `RemoveTag`, `ResetPropertyToDefault`, `SetAttribute`, `WaitForChild`, `Remove`, `children`, `clone`, `destroy`, `findFirstChild`, `getChildren`, `isDescendantOf`, `remove`, `AncestryChanged`, `AttributeChanged`, `ChildAdded`, `ChildRemoved`, `DescendantAdded`, `DescendantRemoving`, `Destroying`, `StyledPropertiesChanged`, `childAdded`
- From [Object](https://rapi.sleaze.dev/classes/Object.md): `ClassName`, `className`, `GetPropertyChangedSignal`, `IsA`, `isA`, `Changed`
