[Bf-committers] Blender and OpenCL

Ian Johnson enjalot at gmail.com
Tue Aug 24 19:40:38 CEST 2010

Hi Jeroen,

I have been experimenting with OpenCL in Blender, trying to add an
accelerated particle system to the BGE.
I've been keeping track of my progress on my blog: http://enja.org
I have some code up on github:
and a fork of Blender with some modifications to support the library:

So far I'm still learning Blender's internals and I know I'm not doing
things "right" but I've tried to keep my changes contained so that it will
be easier to bring in later. I'm using CMake to link against my library.

I think it will be very beneficial to have OpenCL added as an option for
developers to use throughout Blender in a uniform fashion. Having some basic
features like reporting on GPU/CPU hardware and keeping track of how much
device memory is available will be something anybody who is accelerating
their code will need, and it will also make sure we can cleanly fall back to
regular CPU so users don't get confused. I've also heard calls for
accelerating compositing with OpenCL which would be something to think about

I'd love to help with this effort however I can. My motivation is doing my
Master's thesis on enabling interactive particle physics for educational
games, so I'm doing/learning this pretty much full time for the next year.


Hi all

> I have been experimenting with OpenCL and are planning a basic framework

to support it in Blender.

> main features are:

 * OpenCL is disabled by default, CPU fall-back must ALWAYS be

available. OpenCL can be enabled with command-line parameter

 * Compiler directive to completely disable OpenCL in Blender.

 * Basic implementation to access and use GPU-devices

 * I am not targeting the blender-render, but other time-consuming

processes (fluids, node systems etc)

> I think this matches the basic blender principles:

 * can work on standard home PC's

 * blender installation is unzipping an zip

> Are other people also busy with this subject?

> Best regards,


Ian Johnson

More information about the Bf-committers mailing list