---
name: "al_release_haptic_effect"
section: "3"
platform: "linux"
package: "allegro"
version: "5.2.11.3-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/al_release_haptic_effect"
---

# al\_release\_haptic\_effect(3)

Allegro 5 API

## NAME

al\_release\_haptic\_effect - Allegro 5 API

## SYNOPSIS

-

  ```
  #include <allegro5/allegro.h>
  bool al_release_haptic_effect(ALLEGRO_HAPTIC_EFFECT_ID *id)
  ```

## DESCRIPTION

Releases a previously uploaded haptic effect from the device it has been uploaded to, allowing for other effects to be uploaded. The play\_id must be a valid [ALLEGRO\_HAPTIC\_EFFECT\_ID(3)](/ALLEGRO_HAPTIC_EFFECT_ID/3.md) obtained from [al\_upload\_haptic\_effect(3)](/al_upload_haptic_effect/3.md), [al\_upload\_and\_play\_haptic\_effect(3)](/al_upload_and_play_haptic_effect/3.md) or [al\_rumble\_haptic(3)](/al_rumble_haptic/3.md).

This function is called automatically when you call [al\_release\_haptic(3)](/al_release_haptic/3.md) on a [ALLEGRO\_HAPTIC(3)](/ALLEGRO_HAPTIC/3.md) for all effects that are still uploaded to the device. Therefore this function is most useful if you want to upload and release haptic effects dynamically, for example as a way to circumvent the limit imposed by [al\_get\_max\_haptic\_effects(3)](/al_get_max_haptic_effects/3.md).

Returns true on success, false if the effect couldn’t be released for any reason such as when NULL is passed, the effect is not active or failure to release the effect by the driver.

## SINCE

5\.1.8

*\[Unstable API\]:* Perhaps could be simplified due to limited support for all the exposed features across all of the platforms. Awaiting feedback from users.
