A new blender extention for making Gazebo static models

the plugin website: GitHub - yjphhw/gazebo_sdf_static_model_exporter: a Blender extention for making Gazebo Static Models

welcom to use and provide issues.

the useage video tutorial: https://www.bilibili.com/video/BV1DJf2BwESM

# SDF Static Model Exporter

[![Blender]( Blender )](https://www.blender.org/)

[![Gazebo]( Gazebo: Harmonic+ )](https://gazebosim.org)

[![License]( License: MIT )](LICENSE)

Bridge between Blender’s modeling capabilities and Gazebo’s physics simulation. Export static 3D models from Blender directly to SDF format for use in Gazebo simulations.

SDF(SDFormat) is the official model specification format for [Gazebo](https://gazebosim.org). While Gazebo excels in physics-based simulation, its native modeling capabilities are limited.

[Blender](https://www.blender.org/) is an easy-to-use, powful, free and open source 3D creation suite. It supports the entirety of the 3D pipeline—modeling, rigging, animation, simulation, rendering, compositing and motion tracking, even video editing and game asset creation. In other words, blender can make beatuful 3D model.

So, it is possible to make/write an extention to extend blender to export model to SDF, that making Gazebo models easliy.

SDF Static Model Exporter, an extention of blender, can export a 3D model built by blender to SDF model. After export, the exported model can be added Gazebo to enrich your simulation environment.

SDF Static Model Exporter bridges both platforms by enabling ‌direct export of 3D models to SDF format‌. Generated models can be seamlessly integrated into Gazebo simulations.

Have fun with Blender & Gazebo!

## Features

- :rocket: Single-click export of Blender models to SDF

- :brick: Automatic mesh optimization for physics simulation

- :package: Preserves object hierarchy and transformations

- :light_bulb: Lightweight implementation (~50KB)

## Install

### 1. prerequisite

1. Blender 5.0.0 or newer

2. Gazebo Harmonic or newer

### 2. Download this repository as a .zip file.

### 3. Install the zip file as local extention

In Blender:

Navigate to Edit-> Preferences → Add-ons

Click ‌Install…‌ (top-right) and select the .zip file

Enable the add-on by checking its box.

then, boom, you have successfully​:white_check_mark: ‌ install the SDF static Model Exporter.

## How to use

It is recommanded to look a 10 minutes usage tutorial video to learn.

Bilibili is my favorite platform, a 10-minute tutorial is available on ‌Bilibili‌ (link placeholder).

:pushpin: My channel covers Gazebo, ROS 2, and simulation tools – subscriptions welcome!

## Roadmap‌

Future updates may include:

* Texture support

* Custom material/color export

* Enhanced collision mesh handling

:warning: Complex SDF features (e.g., joints, dynamics) require manual post-processing.

## Contribution‌

Bug reports and feature requests: ‌GitHub Issues‌

Support the project: ‌⭐ Star‌ or ‌Donate‌

## Notes‌

An add-on for exporting ‌dynamic robots‌ (SDF) is in development.

Thanks for the tool, it seems Blender is quickly becoming a very good ROS companion :slight_smile:

Would it be possible to support also Blender 4? A lot of ROS assets are in DAE format whose support has been dropped in Blender 5.

Have a look at Release] LinkForge v1.2.3: 100% Type Safety, Parser Hardening & ROS-Agnostic Assets . I think it would make a lot of sense to join forces here.

yes,blender has changed api for export mesh. I also find that dae is not supported by blender 5.0.

actually, I make the prototype of the extention under blender4.2, and make extention more clean and upgrade to 5.0. The reason is that blender consider dae is out of date, so I droped the support for blender 4.2 to make extention coding easily.

I also tried pbr format, which contains mesh and texture in one file, but the blender export pbr format can loaded by gazebo harmonic. so I tried obj format, which success.

the robot add-on I also made a prototype with basic functions. It will be released after several weeks.

Since I am new to blender so the all project seems not fully considered. thanks for your suggestion. I will check these resources and upgrade when properate.

1 Like