Make object fall with constant speed!

Hi is there a way to make a rigidbody that has gravity to fall with a constant speed? Preferably i want to increase or decrease the speed of falling.Thanks!

Well you could either avoid using the physics engine and instead set the transform directly, or you could perhaps set the rigidbodies velocity every frame.

Moving object position using transform:

function Update() {

   transform.position -= transform.up * Time.deltaTime * 5;
}

Moving object by directly influencing the rigidbodys’ velocity every frame:

function Update() {

   rigidbody.velocity = Vector3(0, -5, 0);
}

rigidbody.velocity

You can set the rigidbody to Kinematic and use the transform to move the rigidbody around.

You could use a transform.position.y and subtract from it every frame.

For all of you looking for a way, check the code below

using UnityEngine;

public class Glider : MonoBehaviour
{
	/// <summary>
	/// The speed when falling
	/// </summary>
	[SerializeField]
	private float m_FallSpeed = 0f;

	/// <summary>
	/// 
	/// </summary>
	private Rigidbody2D m_Rigidbody2D = null;

	// Awake is called before Start function
	void Awake()
	{
		m_Rigidbody2D = GetComponent<Rigidbody2D>();
	}

	// Update is called once per frame
	void Update()
	{
		if (IsGliding && m_Rigidbody2D.velocity.y < 0f && Mathf.Abs(m_Rigidbody2D.velocity.y) > m_FallSpeed)
			m_Rigidbody2D.velocity = new Vector2(m_Rigidbody2D.velocity.x, Mathf.Sign(m_Rigidbody2D.velocity.y) * m_FallSpeed);
	}

	public void StartGliding()
	{
		IsGliding = true;
	}

	public void StopGliding()
	{
		IsGliding = false;
	}

	/// <summary>
	/// Flag to check if gliding
	/// </summary>
	public bool IsGliding { get; set; } = false;
}

Then trigger the StartGliding method when you hold the jump button or whatever