RIBit
 
 
Download latest version and see version history

What does it do?

This is a free Renderman exporter for 3DSMax.
It enables you to render your scenes using any Renderman complient renderer.
For now, it doesn't do very much. It is after all a first alpha version, but it is usable to some extent.
It exports your camera, lights and geometry (currenty, all geometry is exported using either polygons or subdivision meshes.)
It exports particles, though not all parameters are exported. The biggest problem with particles is that normalized particle age or the particle lifespan are not exposed to maxscript. If someone knows how to write maxscripts extensions and is willing to expose those parameters, please let me know.
A lot of max attributes are not supported yet.

What does it not do (and probably never will)?

I made this exporter so I can experiment with Renderman, thus, it will probably never be a full production tool.
If you need a working production tool, there are at least two commercial plugins that will do the job much better.
It does not convert your max materials into Renderman shaders (and it will probably never will, unless someone is willing to take on this huge part of the project.) If you wish to create shaders visually, you can use the excellent Shaderman tool by Alexei Puzikov.
Not all of Max's features and attributes are going to be supported.
At the moment there is no primitive support. In fact as mentioned above, all geometry is exported as polygons. I'm not sure if that will change.

Express yourself...

You can use scripting in a few areas of RIBit. Those include for now rib boxes and the shaders parameters in the rendering attribute modifier.
The expressions in RIBit are max scripts and are evaluated when creating the rib file by using the execute command in maxscript. Due to this, it is important to remeber that they are executed in the global scope.
Expressions in RIBit are defined by curly brackets ('{' and '}'). Anything withing these brackets will be treated as maxscript code and will be executed. It is possible to use nested expressions, meaning you can use unlimited number of curly bracket sets, in which case, the inner-most set will be evaluated first and it's result pasted in the containing expression.
There are some predefined variables and functions to ease the expression writing. Other variables and functions will be added in the future.
Variables:

Functions:

How did it all start?

It started with the fact that I wanted to practice some of the Renderman things I learned at work. However, I don't really like working with Maya, and prefer Max. The problem is, there is no free Renderman support.
I thought about writing something like this before, but was quite intimidated by the amount of work required, so it was only after Rudy Cortes (of www.rendermanacademy.com) has offered the code he had started working on for any taker to continue, that I actually started working on this project.
I ended up using parts of Rudy's code, but pretty much wrote it from scrach. However, if it weren't for him, I probably never would have started with this...

OK, So what do I need?

Well, first of all you need a Renderman complient renderer.
Here are a few free one (some completely free, some only for personal use):

Now download the latest RIBit version from here.
This is an .mzp file, all you need to do is run in using max's "run scrip" command, and you're all set to go.

Great. It's installed, now what?

The RIBit installation installs two macroscripts: "RIBit Render" and "RIBit Setup", and some modifiers.
First run "RIBit Setup". There you can define the render engines you've got installed on your machine, as well as some general directories the RIBit will use.
Now, run "RIBit Render". This opens up a "Render Parameters" window, where you can change your render parameters and send a render.
You can use the RIBit modifers to control object specific attributes, such as shaders, geomtry export type (polygons or subdivision), and you can add you own RIB commands with RIBBoxes.

I don't like this script, how do I get rid of it?

RIBit installs files in 3 places, to remove it, delete the following:
1. <max_root>\Scripts\RIBit - delete the whole directory.
2. <max_root>\Scripts\Startup\ - delete the file name RIBit_Startup.ms
3. <max_root>\UI\Macroscripts\ - delete the files beginning with "RIBit"


That's all for now. Enjoy, and please send bug reports to: maxscript[at]oferz.com