Frequently Asked Questions
What is Brazil r/s?
Brazil is a 3D renderer - a program for creating computer generated images.
It currently runs only in 3ds max as plug-in renderer.
Who makes Brazil r/s?
Who/What is SplutterFish?
SplutterFish, LLC is a company launched in May 2001 by Steve Blackmon and
Scott Kirvan in order to provide and dedicate the necessary resources to getting
the Brazil rendering system finished. Brazil will continue to grow
and be developed for a long time.
SplutterFish now consists of handful of "employees," a lot of contractors,
a small team of invaluable, hard-core, volunteers, and innumerable friends
and supporters. Check out the Cast and Crew page on SplutterFish.com,
the gallery pages, and visit our webboard and online chat to see who some
of these people are.
Why has Brazil been released as a public test?
Brazil is a long term project. Many people knew we were working on
it and had been asking to get in on the early testing of the software.
Rather than hand pick a few people to test it and leave everyone else out
of the process, we've decided to let any brave soul, willing to play with
and partake in the development of Brazil, do so. We're taking a small
risk in releasing a public test version of our renderer and gambling that
users will understand what public testing is about. Software typically
goes through development stages of alpha (really buggy, not feature complete,
still being actively developed), beta (beginning lock down to a stable, releasable
product), and release (reliable, robust, and able to be trusted in a production
Where can I get Brazil?
You can currently download the Public Test version for free from the SplutterFish
website. If you are looking for Brazil r/s, the production renderer,
Go to http://www.splutterfish.com and look on the products page for purchase
Can I buy Brazil r/s?
Yes. Go to http://www.splutterfish.com and look on the products page
for purchase information.
How are you going to license Brazil r/s?
We have currently settled on licensing with two types of rendering "bundles."
An "Artist Bundle" which contains a workstation license, and a "Renderfarm
Bundle" for rendering-only machines. The "Artist Bundle" contains licenses
for 3 machines - one workstation license, which operates in max's GUI, and
two render node licenses that can only be used with max running in network
rendering mode. The "Renderfarm Bundle" contains four render node licenses
which will only work when running max in network rendering mode.
How much will it cost?
At the time of this writing, we are offering Brazil at an introductory price.
That price is $1200 for the "Artist Bundle" and $750 for the "Renderfarm
Bundle". When this introductory offer expires, the regular retail prices
for these bundles will be $1500 and $1000 respectively. Keep in mind
- these prices are for the software bundles and not per machine. By
offering the bundle price, we're able to extend the same pricing salability
to individual users that is usually reserved only for "site licensing" schemes.
Do the math yourself and you'll see that by bundling our licenses like this,
the per site cost - whether you render with 3 machines or 300 - is very competitive.
Do you have a mailing list so that I can stay informed of updates/changes?
Yes. You can sign up by entering your email address in the "SplutterFish
Mailing List" box on SplutterFish.com or by visiting http://lists.splutterfish.com/mailman/listinfo/brazil-announce
and signing up.
Do I have to use max?
Max or VIZ, yes. The Brazil r/s plug-ins are currently compatible with
all version of max R3 and later.
Is there a MAXScript to convert all my standard materials to Brazil
No - the Brazil Test material is only a test bed. Standard Material
works just fine with Brazil r/s, so actually, there is no need to convert
your materials. In a very early version of Brazil r/s, this wasn't the
case, but now all of Brazil's advanced features work as expected with max's
standard material. The new material types are fully scriptable so,
although we don't provide conversion scripts, writing them should be pretty
I downloaded the zip - where do I put the files?
How do I install Brazil?
The Brazil plugins just have to be in your plugin path. They are installed
just like any other max plugin. You can put the plugins anywhere you want
and map max's plugin path so that max can find them. See "Configure
Paths", "Plug-Ins Path Configuration" and "Network Plug-In Configuration"
in the max online help. - or "throw it into a folder of your choice (brazil?)
and then edit your plugin.ini to point to that directory or just drop then
into your plugins directory." See also: The install instructions
that are included with Brazil.
Why are the objects behind my glass always so distorted, even if they
are only behind a thin piece of plate glass?
Brazil doesn't render back facing surfaces unless the 2 sided checkbox is
turned on in the material. What you are seeing is the view ray enter
the first piece of glass, it gets deflected, and since it never hits the
back face, it never gets deflected back to it's original path.
Will Brazil run in maya, lightwave, xsi, rhino, [put your app here],
We hope Brazil will eventually run on many different platforms and within
many different applications. Whichever direction Brazil goes, there
will have to be a demand for it. Brazil will have a full API for integrating
it with other packages so it will be possible for other software vendors
to make their applications Brazil friendly. If you have a particular
application you would like to use Brazil with, make sure to tell us about
it and make sure that the creators of that application also know your interest
in using Brazil with their application.
Will there be a standalone version?
I installed Brazil, where is it?
Where is the renderer?
Where is the ui?
Brazil is currently implemented as a Plugin renderer in 3ds max. You
assign Brazil r/s as your current renderer (see your 3ds max documentation)
and then it can be found in the render dialog.
Do I have to use the brazil material?
No, but if you want to use some of the special features available to Brazil
r/s, (glossy reflections/refractions, diffraction, subsurface effects, toon
shading, etc.) you will need to use the Brazil specific materials. You
are ok with standard material as long as you are doing standard phong and
blinn shaded surfaces with or without GI.
Does it work with RayFX or do I still have to keep 'em separated?
Any Brazil r/s build newer than 0.2.26 alpha works just fine with RayFX.
RayFX is max's "raytrace" material and texmap plugins.
Is there a quick how-to for using Brazil?
The basic M.O. is like this: Start Max, create objects, assign Brazil
as your current renderer, and hit the render button. When Brazil r/s
is rendering you will see it render the images in buckets (sub-image rectangles)
rather than in scanlines (the way max's renderer usually renders).
Is there any recommended settings for the acceleration?
Not really - experiment and do what works best for your scene. Typically,
I open the default accelerator parameters and just click "Max Speed" - then
I also go into the Brazil Bucketing Params rollout and turn on the Low Priority
Thread option. "Max Speed" will use more memory, but will render faster.
"Low Priority Thread" make it so that you can still use your computer easily
while rendering. From there you can tweak the setting or try different accelerators
to see if anything feel like it will speed up your rendering. Acceleration
is more of an art than a science and there are no quick settings that will
work best in all cases.
Is it just me or does the antialiasing suck?
Antiaiasing is off by default - you have to set the min or
max sample so something other than 0, 0 (like -1, 2).
Will this version "time out" or stop working at some point?
No - Version 0.2.26 had built in timelocks, but we've decided not to do this
in the future.
What is Brazil, what happened to Ghost, and what about RayFX?
Our work with raytracing started with RayFX in 3ds max. RayFX has been
in development with its current architecture since about 1996. The
original version of RayFX actually worked in max 1.2, but you wouldn't have
wanted to try and use it in production at that point. While the idea
of a material level raytracer seems obvious now, back then it was a pretty
new idea and provided a way to get raytracing into max's scanline renderer.
Blur Studio licensed RayFX to Autodesk and it was included in max as the
"raytrace" material and texmap. As development progressed on RayFX
and as production needs required more and more from the core technologies
of RayFX, it became increasingly clear that there are severe limitations to
squeezing advanced rendering features into the scanline renderer. Our
experimentation with rendering technologies led to something known briefly
as the "advanced material," but that material quickly outgrew the inherent
limitations of running as a sub-system to the scanline renderer, so we began
development on a renderer that would be completely separate from max.
Initially, this renderer was known as Ghost, but due to a Trademark conflict
was renamed to the Brazil Rendering System, or Brazil r/s.
Brazil is a fresh start. The entire system was rewritten around rendering,
as opposed to just being a supplemental rendering tool in an existing rendering
architecture. This difference is significant, and as time passes, the
benefits will become increasingly clear to users. There were many reasons
for writing Brazil, no one thing would have driven us to this major undertaking,
but difficulties that arose during the development of the global illumination
engine, as well as ink&paint, and even basic reflection and refraction
antialiasing were very high on the list.
RayFX is currently owned and maintained by Discreet. Scott and Steve
run SplutterFish full time and no longer work at Blur studio. The relationship
between Blur and SplutterFish is still strong and Blur is SplutterFish's
primary testing site.
Why the heck did you do the initial renderer development as a Render
In 3DStudio MAX, a plugin renderer is required to do much more than just
render the scene. A plugin renderer is responsible for enumerating the
entire scene, sub-system sequencing, bitmap writing, gbuffer management, etc,
etc. It must force each object to generate a valid mesh, generate all
the vertex normals including smoothing group processing, generate all the
shadowmaps, create a complete and valid g-buffer, trigger the set up of all
auto-reflect style maps, etc. While this is certainly doable, and the
prototype Max 1.2 ray trace texture actually did much of this, it is an incredible
amount of tedious (and potentially buggy) code to deal with when one is trying
to proof of concept a renderer. As a developer, it can be very difficult
to tell if it is the scene enumeration, or actual rendering that is broken
when a problem arises. In many ways, this huge speedbump in development
is what has kept us, and likely many others, from experimenting with actual
renderer code in Max.
Render Effects on the other hand, is the perfect place to hang a prototype
renderer. Why? A Render Effect is a very simple plugin to implement,
and when its single method Apply() is called by Max, it gets handed three
things, a complete and valid enumerated scene, a bitmap, and a handle to the
render progress dialog. That's all you need. The enumerated scene
is in the form of a single C++ object called the RenderGlobalContext, and
contains the entire scene, with prepped shadow maps, meshs, etc. ready to
go, and the bitmap contains a valid g-buffer, handily prerendered by the
Default Scanline Renderer. The bitmap itself is the VFB. In other
words, a developer can focus totally on the task of generating an image,
which is the real purpose behind writing a renderer. The rendering
technology can be incrementally implemented, with much less concern about
The Render Effect API is much closer to the way Renderer plugins should
have been implemented, with the scene enumerator being a separate plugin altogether.
Had this been the case, I suspect there probably would have been many more
renderer plugins developed over the years. If anyone out there wants
to experiment with writing a renderer for MAX, steer clear of Renderer plugins
during your prototyping phase, and head for Render Effects. You will
be far less frustrated.
Also, for us (Scott and Steve), working this way provided a convenient
place to delineate our coding responsibilities for these early stages of development.
One developer can focus on the core rendering/rayserver tech, and the other
can focus on the scene enumeration tech, and we don't need to sync code nearly
Will it support this or that feature in the future?
feature list will grow rapidly and steadily. The project has a
great deal of momentum, which grows daily as current productions require
new things. If you are curious about what it will support in the future,
there is much information scattered around this site. This has been
Scott's profession for many years, and Steve's passion for over a decade,
so if the technique exists, we've most likely heard about it, if not experimented
with it. If you don't find a feature, chances are we've considered it,
but it isn't a high priority for whatever reason, or just isn't noted on
this site. Regardless, suggestions are always welcome.
Will Brazil be included in Max x.x?
While our ray tracing technology has been incorporated into Max since release
2.0, the goals for Brazil are more far reaching. It is unlikely that
Brazil itself will ever be a core part of 3DStudio MAX. While Max users
will benefit greatly from our long lived focus on Max in this endeavor, as
developers we do plan on branching out a bit into other software. For
this reason multiplatform support is going to be critical, and is a big motivator
behind Brazil's development. I would never rule anything out, but the
game itself has changed considerably.
Will Brazil support network rendering?
Brazil currently works fine with max's network rendering. Eventually,
Brazil will feature a custom system for dynamic load balanced network rendering,
allowing both single images, or sequences to be distributed efficiently across
small or large networks. Networking and render management will likely
be expandable via the PERL scripting language, and Python support is also
Will Brazil support Global Illumination / Caustics?
It already does. New features are being added all the time. Expect
improvements and additions in all of these areas. see also: "Will it
support this or that feature in the future?"
Will Brazil support Renderman, and if so, can it be used as a ray server
We feel very strongly about not only supporting Renderman, but ensuring that
an actual REYES pipeline can be implemented in Brazil, either by us, or some
third party. Once RIB file support is in place, then using Brazil as
a ray server for PRMan will be theoretically possible. We will look
into this at the appropriate time.
How do I make caustics?
I've turned on caustics, but they aren't working - what should I do?
In the Public Test version of Brazil, caustics doesn't work using pointlights
(spotlight, direct, or omni). Use a self-illuminated object (with a high output
value) as your lightsource. Quickshade must be off. In the full release
version of Brazil r/s you can do (really fast) caustics using point lights
by using caustic photon maps.
Is Brazil the same thing as the Ghost Plugin from Blur Studio?
Yes. Brazil r/s is the new name for the project previously codenamed
the Ghost Rendering System.
Are you still accepting pictures for your gallery?
Sure - email them to email@example.com
Disk swapping / thrashing - what causes it - how to avoid, etc.?
Your machine is running out of ram while you are rendering. Add more
ram or do something to reduce the memory requirements at rendertime.
Large shadow maps are big memory hogs, fast acceleration setups take more
memory than slower ones, etc.
How do I make renders faster?
Use simple materials, use simple materials, use simple materials - inefficient
material setups (tons of texmaps in deep material trees) are the biggest cpu
hogs in the shading pipeline. Avoid swapping - if your machine
runs out of memory and starts swapping, kiss your rendertimes goodby.
Try adjusting the acceleration setting to maximize speed. When using
global illumination, lighter colored objects render slower than darker objects
- expect global illumination to render slow regardless. In the commercial
version, using photon maps and turning down the luma server settings can
really speed up rendertimes. Perhaps try using skylight and some carefully
placed area and/or point lights rather then relying heavily on GI (secondary
illumination) for your illumination subtlety.
Is there gonna be any logo of sorts to toss onto the images we create
like there was with ghost?
Feel free to grab anything off the website and use that. We will put
together some small logos and masks and things and post them on the site
as we have time.
Can we change the default setting for the renderer so I don't have to
keep setting a low priority thread, cranking up the acceleration, change
the antialiasing settings, and [put your request here] each time I setup
a new scene?
Not in the Public Test version. In the commercial version you have the ability
to load/save render presets.
Actually, in anyone can
save presets by saving an empty scene with the render set up as you like to the .max file. And for often-changed settings (and to prevent having to assign Brazil r/s each time), a maxstart.max scene can be made.
Where did the name SplutterFish come from?
Steve, Scott, and Steve's step-sister, Leslie, were wrestling with picking
a new name for Ghost. The dining room table was covered with dictionaries,
physics books, and pages of potential names. After about 2 hours of
working on ideas, we started thumbing through Webster's looking at different
words. Scott looked over and said "look up "sp-" words (sp- words are
funny, like spatula, spit, spank, spoon, etc), then we could call our documentation
'splainin.' We all laughed and I flipped to 'sp' in the dictionary.
I just started reading off words, hit splutter, chuckled, and moved on.
It seemed like the perfect word to describe what we were going through with
the name selection. A few moments later, Scott started tittering.
"Splutter. haha, funny, the company could be [long pause] SplutterFish
or something like that." The name just stuck.
Can I use an orthographic camera in Brazil?