Blender25
Views
Personal tools
From LuxRender Wiki
Work is currently being done on a full integration of LuxRender with Blender 2.5.
Contents |
aim
The aim is to provide a smooth workflow for users using Blender and LuxRender. This means that LuxRender should be able to run directly within Blender without having to export any files.
This integration will be centered around the new pylux library, which is a python module that exposes LuxRender's API for use in python.
status
It has been shown by dougal2 that getting a scene ready for rendering in Blender 2.5 is possible, although there are certain limitations in Blender (as of Feb 2010) which are preventing further development of the integration. So far, some custom UI panels for LuxRender-specific settings have been constructed and settings have successfully been passed to the LuxRender engine via pylux. We can even start the rendering process and periodically update the RenderResult (Image Viewer) in Blender while rendering.
While the first development steps have been taken, the majority of the work is still ahead of us. The current project is highly experimental and is not ready for general use. You should expect that sources may not compile straight away and that modifications are necessary to get it to compile. Unless some kind soul has the knowledge and time to help you out, you will unfortunately have to figure the installation process out by yourself as at the moment we prefer spending time on development over giving installation instructions or ready-made binaries.
We understand that many of you are very keen on trying out the latest and greatest, but until the code has matured enough to be ready for general testing, we have to ask you to be patient. We would be happy to see this project in a usable state by the end of 2010.
roadmap/obstacles
We are facing problems implementing LuxRender's complex materials and textures system. At the current time (Feb 2010) it is only possible to try to construct a "Material Editor" UI panel, in a similar way to which it was done in previous version of Blender. Due to the nature of how the UI is drawn and how the parameters themselves are stored (in IDPropertyGroup classes), the recursive nature of setting up a complex LuxRender material (such as one which uses multiple textures, perhaps with 'mix' or 'blend' types) is quickly making the task of constructing this dynamic UI very complex, if not impossible within the current Blender API.
Blender feature requests
What the LuxRender team would like to propose is to implement LuxRender's materials and texturing system using a set of custom Nodes in Blender instead.
The requirements for this are:
- Being able to specify a custom node in Python
- The custom node need not actually calculate anything in Blender itself, it is merely a 'parameter bucket' containing data to be passed to LuxRender at render time.
Additionally, unrelated to the materials implementation the following issues have been found:
- Cannot update the RenderResult directly from LuxRender's framebuffer, instead we have to let LuxRender save to png file and then load that back in.



