To extend blender functionality for texture painting using python as well as for painting on a canvas, I propose we inlcude PILLOW into the blender libs, making it slightly bigger, and adding the ability to manipulate images and add text and draw lines and save images using python.
this (PIL) and BVHTree acceleration allows users to draw on multiple channels at 60 fps+
using PIL + BVHTree and multiprocessing module, you can draw on multiple images at the same time using different brushes.
think Spec , Diffuse, Reflection mask, and Normal all at the same time. (think substance painter/quixel)
example - (I am using the bge but texture bind ID handles can be exposed in BPY as well)
right now the system won’t grow as fast
because users need to do a few steps to get the system working
( pip install PILLOW )
copy PIL from python-libs-static-libs -> PIL and paste in blender/python
open file and press P.
dependancies -> 2.77 or newer and PIL and PYopenGL
it’s kinda tricky to get exteral python libs into blender,
but I did it like this - made sure system python was same as blender python
(pip install PILLOW) ensure it’s the same bit (32 or 64) as your blender
copy the PIL folder from your python path/lib/site-packages/PIL
place in blender/python
same for PYopenGL (install with PIP and then paste into blender/python)
PM me or post here if you have issues or a nice clean way to automate this.
Attachments
BPRBrush.zip (326 KB)