> For the complete documentation index, see [llms.txt](https://kinematicsoup.gitbook.io/reactor/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kinematicsoup.gitbook.io/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksunityrigidbody.md).

# Class ksUnityRigidBody

Namespace: [KS.Reactor.Client.Unity](/reactor/api-reference/ks.reactor.client.unity.md)\
Assembly: KSUnity-Source.dll

Wraps a Unity Rigidbody for use with Reactor.

```csharp
public class ksUnityRigidBody : ksBaseUnityRigidBody, ksIRigidBody
```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) â† [ksBaseUnityRigidBody](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md) â† [ksUnityRigidBody](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksunityrigidbody.md)

#### Implements

[ksIRigidBody](/reactor/api-reference/ks.reactor/ks.reactor.ksirigidbody.md)

#### Inherited Members

[ksBaseUnityRigidBody.DefaultType](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md#KS_Reactor_Client_Unity_ksBaseUnityRigidBody_DefaultType), [ksBaseUnityRigidBody.Rigidbody](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md#KS_Reactor_Client_Unity_ksBaseUnityRigidBody_Rigidbody), [ksBaseUnityRigidBody.ForceKinematic](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md#KS_Reactor_Client_Unity_ksBaseUnityRigidBody_ForceKinematic), [ksBaseUnityRigidBody.m\_rigidBody](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md#KS_Reactor_Client_Unity_ksBaseUnityRigidBody_m_rigidBody), [ksBaseUnityRigidBody.Mass](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md#KS_Reactor_Client_Unity_ksBaseUnityRigidBody_Mass), [ksBaseUnityRigidBody.Drag](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md#KS_Reactor_Client_Unity_ksBaseUnityRigidBody_Drag), [ksBaseUnityRigidBody.AngularDrag](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md#KS_Reactor_Client_Unity_ksBaseUnityRigidBody_AngularDrag), [ksBaseUnityRigidBody.UseGravity](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md#KS_Reactor_Client_Unity_ksBaseUnityRigidBody_UseGravity), [ksBaseUnityRigidBody.IsKinematic](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md#KS_Reactor_Client_Unity_ksBaseUnityRigidBody_IsKinematic), [ksBaseUnityRigidBody.CenterOfMass](/reactor/api-reference/ks.reactor.client.unity/ks.reactor.client.unity.ksbaseunityrigidbody.md#KS_Reactor_Client_Unity_ksBaseUnityRigidBody_CenterOfMass), [object.Equals(object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object\)), [object.Equals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object-system-object\)), [object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode), [object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype), [object.MemberwiseClone()](https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone), [object.ReferenceEquals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.referenceequals), [object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)

## Constructors

### ksUnityRigidBody(Rigidbody, bool) <a href="#ks_reactor_client_unity_ksunityrigidbody__ctor_unityengine_rigidbody_system_boolean" id="ks_reactor_client_unity_ksunityrigidbody__ctor_unityengine_rigidbody_system_boolean"></a>

Constructor

```csharp
public ksUnityRigidBody(Rigidbody rigidBody, bool forceKinematic)
```

#### Parameters

`rigidBody` Rigidbody

Unity rigid body.

`forceKinematic` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

If true, sets the Unity rigidbody to kinematic so Unity physics doesn't try to move the object.

## Properties

### AngularVelocity <a href="#ks_reactor_client_unity_ksunityrigidbody_angularvelocity" id="ks_reactor_client_unity_ksunityrigidbody_angularvelocity"></a>

Angular velocity. Component values are degrees per second.

```csharp
public ksVector3 AngularVelocity { get; set; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### Constraints <a href="#ks_reactor_client_unity_ksunityrigidbody_constraints" id="ks_reactor_client_unity_ksunityrigidbody_constraints"></a>

Controls which degrees of freedom are allowed for the simulation of this rigidbody.

```csharp
public ksRigidBodyConstraints Constraints { get; set; }
```

#### Property Value

[ksRigidBodyConstraints](/reactor/api-reference/ks.reactor/ks.reactor.ksrigidbodyconstraints.md)

### KinematicMovement <a href="#ks_reactor_client_unity_ksunityrigidbody_kinematicmovement" id="ks_reactor_client_unity_ksunityrigidbody_kinematicmovement"></a>

Amount of movement that will be applied to a kinematic rigid body entity during the next physics simulation step. After the simulation step this value will be reset to [Zero](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md#KS_Reactor_ksVector3_Zero).

```csharp
public ksVector3 KinematicMovement { get; set; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### KinematicRotation <a href="#ks_reactor_client_unity_ksunityrigidbody_kinematicrotation" id="ks_reactor_client_unity_ksunityrigidbody_kinematicrotation"></a>

Amount of rotation that will be applied to a kinematic rigid body entity during the next physics simulation step. After the simulation step this value will be reset to [Identity](/reactor/api-reference/ks.reactor/ks.reactor.ksquaternion.md#KS_Reactor_ksQuaternion_Identity).

```csharp
public ksQuaternion KinematicRotation { get; set; }
```

#### Property Value

[ksQuaternion](/reactor/api-reference/ks.reactor/ks.reactor.ksquaternion.md)

### Velocity <a href="#ks_reactor_client_unity_ksunityrigidbody_velocity" id="ks_reactor_client_unity_ksunityrigidbody_velocity"></a>

Linear velocity

```csharp
public ksVector3 Velocity { get; set; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

## Methods

### ClearKinematicMotion() <a href="#ks_reactor_client_unity_ksunityrigidbody_clearkinematicmotion" id="ks_reactor_client_unity_ksunityrigidbody_clearkinematicmotion"></a>

Clear the Kinematic movement and rotation values.

```csharp
public void ClearKinematicMotion()
```
