LuxCore API

Home / LuxCore API
Image courtesy of Charles Nandeya Ehouman (Sharlybg)

The plan for LuxCoreRender v2.0 has been defined during the 2013 summer and one of the major components is a new LuxCoreRender C++ and Python API. The old C API suffers of many limitations when it comes to modern features like dynamic scene editing and interactive rendering so it has been decided to write a completely new API instead of improving the old one. LuxCore is the name of the new C++/Python API. It offers all the features shown by SLG (aka SmallLuxGPU) in the past (in terms of dynamic camera, textures, materials, objects, etc. editing) and more.

LuxCoreRender v2.0 is not just a new API but also a completely new code base re-written from scratch. Aside from all new features, LuxCore API has been measured to be up to 10x faster then the old LuxRender on the same hardware while rendering the same scene. LuxCore API supports also GPU rendering with OpenCL.

All the code included in LuxCore repository has been released under a new license: Apache Licence v2.0. It is a very liberal license allowing the use of the code inside commercial products too. Original LuxRender v1.x code was released under GPL license.

Python has become the de facto standard language for scripting in computer graphics. It has been recently adopted by AutoDesk 3Ds Max too and it was already in use by Blender, Maya, MODO, etc. For this reason the Python bindings of the API will be a first class passenger like C++ and they will be developed at the same time of the C++ API. However nothing stops anyone from writing Ruby, Java, etc. API bindings.