As of today the Cycles source code license has been changed from GNU GPL to the Apache License version 2.0. This is a permissive license that allows Cycles to be linked and used with any program, including commercial software and in-house software at studios.
The design and purpose of Cycles always has been to work as an independent and reusable rendering engine. When Cycles was added to Blender two years ago, we decided to release it under GNU GPL first, specifically to ensure it would develop into a well integrated production rendering system for Blender. With that target to be established well, it’s now time to find out how Cycles could work outside of Blender too.
We hope this move would help Cycles grow as a project in the long term, as the project could attract more contributors and might be easier to use for studios under the new license. With the release of various libraries by movie studios like OpenEXR, Open Shading Language, OpenSubdiv, PTex and OpenVDB, which we use or plan to use in Blender, we also think it would be nice to contribute something back under a similar permissive license. As Cycles is reasonably stand alone and integrates many of these libraries already, it’s a good candidate to share similarly with everyone.
Note that Blender Foundation and Blender Institute remain committed to further developing Cycles as a render engine for Blender. We welcome other developers to integrate it in other applications, and especially to get involved with the Cycles development team at blender.org.
We also remain fully committed to keep Blender itself being available and developed as a GNU GPL project. For an end-user tool like Blender that gives the best protection to ensure the program remains available in a 100% free and open domain. For stand-alone libraries however, the BSD or Apache has proven to work excellently, also for Blender.
Evaluating which permissive license to use has been reviewed carefully. There’s a number of choices we could have selected as well, such as BSD or MIT. However, we already have core Cycles code under the Apache license, mostly related to BVH building and traversal, and SIMD optimizations. We also plan to integrate OpenSubdiv, wich is Apache License 2.0. Even though some of the Cycles code is under the BSD license, combined together it would be determined by the Apache license anyway, so it seems like the logical choice.
All contributors to Cycles have been contacted and have agreed on the license change. Many thanks to everyone for making it possible!
Brecht van Lommel
Blender Institute / Blender Foundation
1) Blender screenshot, Cycles preview rendering and Node Shaders
2) “Power Mouse” – By www.pokedstudio.com
3) “Tears of Steel” – www.tearsofsteel.org
4) Video of Cycles in action for automotive rendering, by E-mirage
Images can be used for sharing this article, provided it mentions the credit.