Blender Python Api
Blender as a python module with easy-install. Meant for installation into a virtualenv or wherever, for unit testing of Blender extensions being authored, or developement of a Blender 3d-enabled Python application. Depends upon the bpy-build module to make sure the Blender bpy module environment is correct. For more information, please see. Blender 2.80: Python API Changes. Blender 2.80 is an API breaking release. Addons and scripts will need to be updated to run on 2.80, both to handle the new features and adapt to changes to make the API more consistent and reliable. Module and class registration has been changed, all addons need to be updated to handle these. Many Python scripts come bundled with Blender and can be used as a reference because they use the same API that script authors write tools in. Typical usage for scripts include: user interface, import/export, scene manipulation, automation, defining your own tool set and customization. Blender 2.92.0 Python API 02948a2cab44 Documentation. Quickstart: New to Blender or scripting and want to get your feet wet? API Overview: A more complete explanation of Python integration; API Reference Usage: examples of how to use the API reference docs. Blender 2.79: Python API Breaking Changes. Switched default value of dounlink parameter of bpy.data.xxx.remove functions from False to True. Data-block Pointer Properties. Custom properties can now store pointers to data-blocks like objects, materials, etc. For this the a PointerProperty with a datablock type can be created.
Latest versionReleased:
Blender as a python module
Project description
Blender as a python module with easy-install
About
Meant for installation into a virtualenv or wherever, for unit testing of Blender extensions being authored, or developement of a Blender 3d-enabled Python application.
Depends upon the bpy-build
module to make sure the Blender bpy
module environment is correct.

For more information, please see:
Getting Started
Prebuilt wheels are provided for popular Platforms (MacOS, Windows, and Ubuntu). Prebuilds include 'normal' installation (bpy
), CUDA (bpy-cuda
) and Optix (bpy-optix
). Choosing the correct version depends on your use-case and hardware but in general bpy
should be just fine for non-rendering automation tasks while bpy-optix
has the best performance but requires a NVIDIA RTX Card and up to date drivers.
Installing
Installing a prebuilt on these platforms is simple.
pip install bpy && bpy_post_install
Self Building
Building the Blender API for your own platform can be difficult, however this repo should make it easy enough for you to create your own builds by hand.
Build from sdist
You can build from a source distribution using pip
.
Blender Python Api Pdf
Prerequisites
Performing a build from sdist
requires at least the prerequisites for building Blender. See the wiki for the list of prerequisite applications.
Windows
Other
Build
Windows
Other
Build from repo

You can also build after cloning the repository, this is helpful during development.
Prerequisites

Build
If you have a specific version of bpy
you want, you have to change the VERSION
string at the beginning of the bpy_<optional extra>_setup.py
file.
To build, run the below command.
Windows
py bpy_setup.py sdist bdist_wheel
Other
python3 bpy_setup.py sdist bdist_wheel
The resultant wheel in the dist folder can be installed using pip.
Post any errors you have as an issue.
FAQ
Q. I am getting failed to find 'bpy_types' module
A. Please see issue #13
Q. I am getting ImportError: DLL load failed: The specified module could not be found
A. Please see issue #15
Q. How do I import addons?
A. Addons (Blender internal and third party) can be imported using the code referenced here.
Q. How can I use Blender in multiprocessing
?
A. Blender runtime usage and compatibility with multiprocessing
is limited, see the documentation.
Q. What about my operating system of choice?
Blender Python Api Examples
A. MacOS support is on its way. After that is Ubuntu.
Q. What about my Python version of choice?
A. Some builds you will have to make yourself if you have a specific version of the API you want. Likewise, if you are contrained to a specific Python version (especially those that aren't shipped by python.org) then you may have to try and build yourself.
Q. What about my bitness of choice?
A. 32-bit support officially ended with 2.80
. See the announcement
Gotchas
I have not tested this for platforms other than Windows Python 3.6.x at the moment. More to come soon.
Release historyRelease notifications | RSS feed
2.91a0 pre-release
2.82.1
2.82
0.0.0a0 pre-release

Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size bpy-2.82.1-cp37-cp37m-win_amd64.whl (105.7 MB) | File type Wheel | Python version cp37 | Upload date | Hashes |
Filename, size bpy-2.82.1.tar.gz (19.9 kB) | File type Source | Python version None | Upload date | Hashes |
Hashes for bpy-2.82.1-cp37-cp37m-win_amd64.whl
Blender Python Api Reference
Algorithm | Hash digest |
---|---|
SHA256 | ccbd1b7a62ffe67978723e91ff4df733c1a6b7c35a83bc0364b012ce4390167a |
MD5 | b3fc58216bf8bcda2359ac9ef6b9e9cb |
BLAKE2-256 | 2a733b380c005529e510cd9ab0fa0194e3cca5848c441b0859f81069ab093787 |
Hashes for bpy-2.82.1.tar.gz
Algorithm | Hash digest |
---|---|
SHA256 | 5f84452552724ae32faca9d001741e982f9cd61640c39975c6a6b734b29f5c35 |
MD5 | e1033e72a96efdbff6bcbce6cc69c7d8 |
BLAKE2-256 | 4bedba6092b691acc5b157891421d9fde4a9dd5dcc8a8b93a4e8119fec261391 |
