RenderMan/Gelato Utilities

What's on this page?


rsl2gsl

Amoung other things, with rsl2gsl, one can parse the RenderMan shading language (RSL) and either write out RenderMan or Gelato shaders.

More information can be found within the current ReadMe.html file.

To get a copy go to the download directory. Note for those not familar with the syntax. The packages, .tgz are in a gzip'ed tar file. (For Windows users, if you get Cygwin as I recommend, it has the needed executable to extract the files: tar.)

> tar zxvf rsl2gsl_1.0.0.tgz

Version 1.0.0 is now released. Here are excerpts from the ChangeLog:

1.0.0 July 27, 2005
	[[ ]] can now be interpreted as rawblocks (RB).
	Fixed bug where only one RB could occur in the same statement block area.
	Fixed bug where dangling ';' in parameter list would cause a parsing error.
	Fixed bug where two empty statements would cause a parsing error.
	
	Handles break and continue keywords.

	Added gtrace() for Gelato's trace() as opposed to RMan's trace call.
		This saves the code duplication that would have occured by 
		using a RB.

	Support for RMan illuminance send/recieve message passing.

0.9.1 February 17, 2005
	Handles array initializers that are negative numbers:

	float a[2] = {-1, -2}
	

0.9.0 January 01, 2005
	Tries to handle cases like:
		vector v = (0, 0, 0);

		to
		
		vector v = vector (0, 0, 0);

		Gelato needs implicit cast.
	
	Closer to releasing source code.
	
0.8.3 November 29, 2004
	Handles internal void functions

	Another "current" -> "common" case handled.
	
0.8.2 November 18, 2004
	Fixed another case dealing with "current"->"common" space translation
		vtransform ( "shader", "current", vhsl );

	Before only the first paramter was being considered.

0.8.1 October 05, 2004
	"current"->"commom" space translation missed case:
		origin = point "current" (0, 0, 0);

0.8 September 23, 2004
	Several minor fixes/changes
		Will change "current" to "common" for transformation space changes.
	
		illuminance(), illuminate() blocks will not longer cause a ';' to be emited if the argument list is empty.
		The ?: triop has been changed.  Even less cases, than what were allowed in 0.7, will be accepted by the parser.  Consult the ReadMe.html for more details.

		translator will allow for (int i = 0;...).  You will need Gelato 1.1 or greater for the shader compiler to accept this.
		
		Removed limitation of "yiq" as a color space.  You will need Gelato 1.1 or greater for the shader compiler to accept this.
	
	ReadMe.html has been updated.  New sections include:
		Caution with the ?: operator
		Manual intervention with translating light shaders may be needed.

Ribelato

Ribelato is a RIB input Plug-in that allows Gelato to render RenderMan RIB scenes.

To get a copy go to the download directory. The distribution is open sourced. There is also a pre-compiled DSO that should work under various Linux platforms.

More information can be found within the current README file.


Tal Lancaster
Last modified: Thu Jan 25 20:26:13 PDT 2006