Home

Awesome

bqt

PyPI version latest tag

Add QT support to Blender, letting you create custom UI for your addons with PySide2 QtWidgets. custom ui sample

Features

featuredescription
fully custom UIInstead of feeling limited by N-Panel only UI. Do whatever you want.
cross appQt widgets run nativaly in Krita, 3ds Max, Maya, … and are great to use in cross dcc pipelines
existing communityhundreds of QT widgets on GitHub you can reuse, and lots of stack exchange questions answered regarding qt.
ThemedBQT ships with a basic blender theme, so qt widgets will by default look similar to Blender.

Requirements

Blender 2.83or higher. Windows (stable) or Mac (experimental)

Installation

install as addon (recommended)

  1. Download the latest release. You can download the zip from the repo.
  2. Extract the zip and copy the bqt folder to your blender addons folder.
  3. Enable the addon by going to Edit > Preferences > Add-ons and search for qt

PIP install

The installation of bqt with automatic setup for Blender requires the usage of the integrated python interpreter found within ../Blender Foundation/<version>/Python/bin

python.exe -m pip install bqt

Installing from Source

If you are installing from a clone of the repository you can easily install by navigating to bqt's root folder and running:

python setup.py install

Develop setup

When working on the bqt code from a repo, to prevent having to reinstall bqt every time you make a change, you can symlink the bqt folder to your blender addons folder to develop bqt. Any updates in the repo are then reflected in blender on restart. e.g.:

mklink /J "C:\Users\USERNAME\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\bqt" "C:\Users\hanne\OneDrive\Documents\repos\_Blender\bqt\bqt"

Environment variables

variabledescription
BQT_DISABLE_STARTUPif set to 1, completely disable bqt
BQT_DISABLE_WRAPif set to 1, disable wrapping blender in a QWindow
BQT_DISABLE_CLOSE_DIALOGUEif set to 1, use the standard blender close dialogue
BQT_MANAGE_FOREGROUNDdefaults to 1, if 0, widgets registered with bqt.add(my_widget) won't stay in the foreground when using Blender.
if you modify env vars, ensure they're strings

Sample code

bqt_demo shows you how to use bqt with several qt demos you can run in Blender

Community

Discuss BQT on

ALternative