Overview
drake-blender
is an implementation of the Drake
glTF Render Client-Server API
atop
Blender.
This is a relatively new project and may still have bugs. Please share your issues and improvements on GitHub.
Compatibility
This software is only tested on Ubuntu 22.04 "Jammy", but should probably
work with any Python interpreter that supports our requirements.txt
.
Running the render server
There are two ways to run the server.
(1) From a git checkout of drake-blender
:
./bazel run :server
This way has no extra setup steps. It will automatically download the required dependencies into the Bazel sandbox, using the same versions as pinned by our requirements lockfile that is tested in our Continuous Integration build.
(2) From your own virtual environment:
The server.py
file is self-contained -- it does not import any other files
from drake-blender. Instead of using Bazel, you can also run it as a standalone
Python program (python3 server.py
) so long as the packages listed in our
requirements.in
are available in your Python runtime environment. You are
responsible for preparing and activating an appropriate virtual environment on
your own.
Examples
See examples.
Testing (for developers)
From a git checkout of drake-blender
:
./bazel test //...
Linting
Check for lint:
./bazel test //... --config=lint
Fix all lint:
./tools/fix_lint.sh
Credits
The Drake-Blender project was created by the Robotics Division at Toyota Research Institute. Many other people have since contributed their talents. Here's an alphabetical list (note to contributors: do add yourself):
- Bassam ul Haq
- Cody Simpson
- Eric Cousineau
- Jeremy Nimmer
- John Shepherd
- Kunimatsu Hashimoto
- Matthew Woehlke
- Sean Curtis
- Stephen McDowell
- Zach Fang
Licensing
Per LICENSE.TXT, this module is offered under the
BSD-2-Clause license, but note
that it loads import bpy
from Blender so is also governed by the terms of
Blender license GPL-2.0-or-later.
Per examples/LICENSE.TXT, the examples
code is
offered under the MIT-0 license.