Neqsus/BtoR(Blender to Renderman) is an exporter & rendering control system for Blender.
- Export to Renderman format archive files.
- Full scene-data saving/loading, both within a blender scene file, and to external XML files.
- Material definition system using existing shaders, with automatic preview ability.
- Material import/export for saving material definitions to external files.
- Automatic generation of shadow, occlusion, and environment maps.
- Support for Ambient Occlusion map generation. (Currently only works for Aqsis).
- Automatic generation of AOV output.
- Custom RiOption definition system.
- Imager and Light shader support.
- Blender version 2.42 http://www.blender3d.org or better.
- Aqsis (Any version will work)
- Python 2.4 (2.3 is rumoured to work as well, but I wouldn't chance it. YMMV.)http://www.python.org
- CgKit 2 http://cgkit.sourceforge.net
- PyProtocols http://peak.telecommunity.com/PyProtocols.html Cgkit also requires PyProtocols.
You may encounter issues with CgKit and PyProtocols on Linux and MacOS.
To install PyProtocols without the C/C++ speedups in case of shared library problems on linux or MacOSX, you can use the following command. python setup.py –without-speedups install
This will install pyprotocols. The pure-python implementation is a tad slower performance wise, but it's not appreciable.
For CgKit, you will need to have a fully working gcc installation. The “lite” version of Cgkit does not include the Renderman interface code neecessary to generate RIB files.
If all system requirements are met, you can download the latest Neqsus scripts from the Aqsis SVN repository here: http://svn.sourceforge.net/viewvc/aqsis/trunk/aqsis/tools/BtoR/
Ensure that you have the standard shadowmapped light shaders (shadowspot, shadowpoint, shadowdistant) and that they are in your primary shader search path. If you're using Aqsis, you can fetch those from here: http://svn.sourceforge.net/viewvc/aqsis/trunk/aqsis/content/shaders/light/
Place BtoR.py in your .blender/scripts directory.
Place all of the remaining files either in .blender/scripts/bpymodules/BtoR, or in $python-path/lib/site-packages/BtoR. (Note that case IS significant)
On the “Scripts” menu, select Render→Blender to Renderman. If all is well, you should see a screen that looks like this:
Here is where you configure your search paths for your shaders, and your default output directory.
Use the “Add path” button to add a new path. Hit the ”…” button to change the path if neccessary. The “Recurse” flag will cause Neqsus/BtoR to recursively read all subdirectories of a given directory.
THIS IS VERY IMPORTANT. You will NOT be able to adjust shader parameters without doing the following: Locate your shader directory, and ensure that the .sl source code for your shaders is present. CgKit uses the actual shader source to develop a list of shader parameters to be edited. The source files and the binary shader files need to be in the SAME DIRECTORY for the moment. (A better system is being developed to seperate source and binary shaders, but isn't ready to roll yet.)
Ensure that you've compiled all of your shaders with the shader compiler for your renderer. IF you're using Aqsis, this would be aqsl.
This should complete your installation of Neqsus/BtoR.
The first step to using Neqsus/BtoR is getting the spacehandler working. If Neqsus/BtoR is up and running, then the spacehandler has been created. At this point, you need only to enable it. In any 3D view, select View→Space Handler Scripts→Event:BtoRSpaceHandler. Once you've done this, you can open the object properties dialog, and edit export settings for each object by selecting them in the 3D view.
Below is a screenshot of Neqsus/BtoR running the material editor, render export settings, and object properties window for a lamp.
You can create materials by selecting “Materials → Material List” on the main menu. Creating materials is straightforward. Simply add a new material, give it a name, and click ok. You can then edit the properties for that material by clicking the material's button in the material list. Assigning shaders is equally simple. Select each shader type, and you will be presented with an editor for that shader. The shader editor will load the parameters for a selected shader (e.g. “plastic”) and allow you to edit them.
Once a material has been created, it's a simple matter to then assign that material to an object. Open the Object properties window, and select the object you want. Click the “Assigned material” button, and you will receive a scrollable window with the current materials in it. Select the material you want, and you're done.
You may find with CgKit that some shaders won't appear in the shader list. This is because Cgkit was unable to parse the shader. There are several things that can cause this depending upon the version of Cgkit that you're using…but there's a simple fix!
Simply process the shader source file that's giving you problems with either cpp or the preprocessor that comes with the renderer. In the case of Aqsis, this would be slpp.
The command should be formatted like so: slpp myshader.sl > myshader_x.sl
Of course you can use any naming convention you so desire.
Restart Neqsus/BtoR and your shader should now appear.