Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/Ozuba/rclgd.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-02 |
| Dev Status | UNMAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| colcon_rclgd | 2.1.0 |
| rclgd | 2.1.0 |
| rclgd_cli | 2.1.0 |
README
Features
As for now only the basic set of the rclcpp api are implemented, keep in mind this is highly experimental and not suited yet for production. But it serves as the groundbase for implementing awesome simulation environments and visualizers using the powerful features of the godot engine.
- rclgd Singleton
- Dynamic Msg Type Support
- Nodes
- Publishers
- Subscribers
- Service Clients
- Service Servers
- Timers
- Action Clients & Servers
- Parameters
- TF2 Publishers and Listeners -> Including stamped lookups, time travel and frame-graph introspection
- TF2 Listeners And Broadcasters as 3D Nodes in godot (Will be deprecated in future update)
- Node and TF Namespacing
- ROS Graph Inspection
- QoS -> Through QoS RosQoS resource
- Godot template project
- Godot Editor Support -> Pseudo-Static Type Wrappers
-
Simulation Time ->
-p publish_sim_time:=truepublishes the Godot physics clock on/clock; the standard-p use_sim_time:=truemakes clocks and timers follow/clock - Native RCLGD packages in colcon
Repository layout
The suite is split into independently releasable ROS 2 packages:
| Package | Type | Contents |
|---|---|---|
rclgd |
ament_cmake | the GDExtension (librclgd.so), godot launcher, runtime manifest |
colcon_rclgd |
ament_python | the build_type: rclgd colcon extension |
rclgd_cli |
ament_python | the ros2 rclgd command and the editor addon template |
The system-test suite (rclgd_tests, itself a native rclgd package) is
maintained separately so this repository contains only the releasable
packages.
Installation
From apt (recommended)
rclgd is published to the ROS 2 build farm, so on a machine with the ROS 2 apt repositories configured you can install the whole suite in one command:
sudo apt update
sudo apt install ros-jazzy-rclgd
This installs all three packages plus the pinned Godot editor binary — the
install is complete out of the box, no extra step. Replace jazzy with your
ROS 2 distribution if needed (rclgd is developed and tested on Jazzy).
source /opt/ros/jazzy/setup.bash
ros2 rclgd doctor # verify the install
Building from source
Build from source to track main, hack on rclgd, or target a different Godot
version. Clone into your workspace, install dependencies, build and source.
The rclgd build downloads the pinned Godot editor binary (SHA-512 verified
against the official release sums) and installs it as lib/rclgd/godot-bin,
next to librclgd.so — provisioning happens inside the build, so the install
is complete out of the box with no separate setup step.
git clone --recurse-submodules https://github.com/Ozuba/rclgd.git src/rclgd
rosdep install --from-paths src --ignore-src -y -r
colcon build --packages-up-to rclgd
source install/setup.bash
The build installs exactly the Godot version librclgd was compiled against
(the version of the godot-cpp bindings; recorded in
share/rclgd/godot_version). To use a different Godot version, retarget the
godot-cpp submodule to the corresponding branch, edit GODOT_VERSION and
the GODOT_SHA512_* pins in rclgd/CMakeLists.txt, and rebuild.
Command line tools
rclgd ships a ros2 rclgd command:
| Verb | Purpose |
|---|---|
ros2 rclgd create <name> |
Scaffold a new rclgd package (package.xml, project, addon, demo pub/sub) |
File truncated at 100 lines see the full file