Check out our latest project ✨ OpenChapter.io: free ebooks the way its meant to be 📖

EzPID

An asset by iiMidknightii
The page banner background of a mountain and forest
EzPID hero image

Quick Information

0 ratings
EzPID icon image
iiMidknightii
EzPID

A GDExtension addon that adds a simple, generic PIDController that can either be used to update another node's property to follow a target value, or to manually integrate into your scripts. Includes full documentation and tons of customization features.

Supported Engine Version
4.3
Version String
1.1
License Version
MIT
Support Level
community
Modified Date
2 months ago
Git URL
Issue URL

README EzPID

A lightweight, fast PID controller for Godot implemented as a C++ GDExtension.

Installation

From Godot Asset Library in the Editor

Click the AssetLib button at the top of the Godot editor and search for EzPID. When prompted where to install it, you can select only the folder named "addons". If you wish to modify or recompile the addon, then you'll need to include the "godot-cpp" and "src" folders along with the "SConstruct" file from this repository.

From Godot Asset Library Web

Head over to the EzPID page on the asset library website and click the download button. Unzip the download into a location of your choosing. To put the addon in your project, just copy the "addons" folder into the project directory.

From GitHub.com

You can download the full repository for EzPID here. You can clone this repository by doing git clone https://github.com/iiMidknightii/EzPID.git in the directory of your choosing. If you want to compile your own binaries this is the best option. To put the addon in your project, just copy the "addons" folder into the project directory.

Tutorial

Just add a PIDController node to your scene, select a node/property to control, then begin tuning the gains. You can sellect whether the PIDController updates in the process or physics frame. If what you are trying to control is more complicated or you want finer control on when it updates, you can set the controller to update manually then call the update_state method directly. You can also add custom state integration for the controlled property by overriding the _integrate_state method in a script that extends PIDController. Both the PIDController node and the PID gains resource have built-in documentation for reference.

[!TIP] You can enable the PID controller in the editor if you want to use it for editor plugins or nodes that need to run in @tool mode.

Latest Release

  • 1.0.2 - Fixed build system

Contributing

Feel free to leave any feedback, bug reports, and contributions to the repository at https://github.com/iiMidknightii/EzPID.

A GDExtension addon that adds a simple, generic PIDController that can either be used to update another node's property to follow a target value, or to manually integrate into your scripts. Includes full documentation and tons of customization features.

Reviews

0 ratings

Your Rating

Headline must be at least 3 characters but not more than 50
Review must be at least 5 characters but not more than 500
Please sign in to add a review

Quick Information

0 ratings
EzPID icon image
iiMidknightii
EzPID

A GDExtension addon that adds a simple, generic PIDController that can either be used to update another node's property to follow a target value, or to manually integrate into your scripts. Includes full documentation and tons of customization features.

Supported Engine Version
4.3
Version String
1.1
License Version
MIT
Support Level
community
Modified Date
2 months ago
Git URL
Issue URL

Open Source

Released under the AGPLv3 license

Plug and Play

Browse assets directly from Godot

Community Driven

Created by developers for developers