Legacy Documentation: Version 4.5.0

Script language:

  • JS
  • C#
  • Boo
Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Rigidbody.AddRelativeForce

Switch to Manual
AddRelativeForce(force: Vector3, mode: ForceMode = ForceMode.Force): void;
void AddRelativeForce(Vector3 force, ForceMode mode = ForceMode.Force);
def AddRelativeForce(force as Vector3, mode as ForceMode = ForceMode.Force) as void

Description

Adds a force to the rigidbody relative to its coordinate system.

As a result the rigidbody will start moving.

	// Moves the rigidbody forward along its own z-axis

function FixedUpdate () { rigidbody.AddRelativeForce (Vector3.forward * 10); }

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    void FixedUpdate() {
        rigidbody.AddRelativeForce(Vector3.forward * 10);
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	def FixedUpdate() as void:
		rigidbody.AddRelativeForce((Vector3.forward * 10))

AddRelativeForce(x: float, y: float, z: float, mode: ForceMode = ForceMode.Force): void;
void AddRelativeForce(float x, float y, float z, ForceMode mode = ForceMode.Force);
def AddRelativeForce(x as float, y as float, z as float, mode as ForceMode = ForceMode.Force) as void

Description

Adds a force to the rigidbody relative to its coordinate system.

As a result the rigidbody will start moving.

	// Moves the rigidbody forward along its own z-axis

function FixedUpdate () { rigidbody.AddRelativeForce (0, 0, 10); }

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    void FixedUpdate() {
        rigidbody.AddRelativeForce(0, 0, 10);
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	def FixedUpdate() as void:
		rigidbody.AddRelativeForce(0, 0, 10)

If you want to apply a force over several frames you should apply it inside FixedUpdate instead of Update.