Professional-stable vs Professional-beta (as of Build 1449) 21659

As of Build 1437, Brazil r/s v2 Professional Edition has been split up into two different versions:

Professional-stable is intended to be the current ‘locked’ and ‘known good’ version of Brazil r/s v2 Professional Edition.
Professional-beta contains beta features and changes which can be highly in flux (including, potentially, breaking file compatibility – although we’ll certainly try not to ). So a bit more risky, but more production tools to play with.

The list of what’s in beta that’s not in stable, as of Build 1449, is:

Material Editor rendering
Brazil r/s v2 can now be used as the Material Editor renderer. This allows you to do things like preview SSS effects on, say, the Cube or any custom scene geometry loaded into the Material Editor renderer.
Note that you can’t interrupt material editor renders at this time, so if you create a very heavy setup – consider switching back to the Scanline renderer for material editor rendering.

Dome Light
The Dome Light, to be found in the Brazil r/s v2 Lights category, is a spherical / dome light that implies importance-sampling. In short, the Dome Light allows you to light a scene much like you would with Sky Light, with the major advantage that it is magnitudes more efficient for a textured light source (mapped skylight), especially HDR and EXR ‘Image Based Lighting’.
Currently the Dome Light samples on its own, not hooked up with Light Portals and the Render Cache, so typical speed compared to using the Render Cache will be slower.

Originally Posted by minimaldocs by 0xc02da5
  • On, Color, mult : old same obvious stuff
  • Limit to Hemisphere: When on, light will come only from the above (+Z part of the world space). When off, light will come from below too. Having this on, as you can guess, causes slightly better quality and speed with the same settings.
  • Texture
    • Use Environment: when checked, the light will use max’s environment texture and settings. I think currently the non-textured max environment (constant color) is not bind. I’ll fix that
    • Specify Texture: when checked, the texture in the below slot will be used as the sky texture. You can put any texture map there including bitmaps and procedurals. Currently only the “Spherical Environment Mapping” is supported. So please make sure that the texture mapping settings are correct (Explicit mapping will give you constant color).
    • Resolution: This determines the lookup table size that the importance sampling system uses. The higher this value, the more details of the texture is preserved and more RAM will be needed. RAM usage is ~(4xResolutionxResolution) Bytes.
    • Filtering: This is another obvious parameter. Please note for filtering be effective, filtering settings of the texture should be enabled (non-None) too. Also you may find slightly increased filtering amount values (1.5 maybe) giving better results. Please let us know your findings.
  • Shadows: Should be obvious. The shadow type used is the sharp ray shadow (the dome lighting will automatically make for soft area/occlusion shadowing)
  • Sampling / Quality:
    • Adaptive sampling: This is the usual block of adaptive sampling parameters.
    • Importance: This parameter controls the “importance sampling” feature. Normally almost always you should keep it at “ON” and use “1.0” as the amount. There are theoretical cases where you may want to slightly lower the amount value. For example if there is a very very bright small spot in the HDRI texture map, all the samples will be concentrated to that region (this is how the importance sampling works). This makes the variance (noise) in the image quite low as long as that spot is visible by the illuminated surface point (which is the dominating light source). But, if there’s an object between the illuminated point and that bright spot in the sky, then that point will not get illumination from the other parts of the sky, so will totally black. So if that happens, you can lower the importance amount letting some samples to hit non-bright areas as well. This will increase the noise a bit but will also make sure that sky texture will be sampled more homogeneously. Practically I couldn’t find a scene/texture which shows such a need. But you are the real users and so please do report if you find lower numbers giving better results.

Analytical Bump
The Analytical Bump map calculates bump maps on objects as if they were small surface displacements, rather than simple normal perturbation. This increases the quality of the bump significantly, especially when used for seams, paneling, etc.
As a huge bonus, the Analytical Bump map works off the Mono channel of maps – if you’ve ever had problems with maps seemingly not working (properly) when used as a Bump map, it would be because the Map either incorrectly implemented the Bump channel – or did not implement it at all. By using the Mono channel, this map doesn’t care whether the submap supports the Bump channel or not. The only down side is that ‘Bump Amount’, present in some procedural maps, will have no effect – use the RGB Level output instead.

Originally Posted by minimaldocs by strangelove
  • Bump Source: This is the map who’s output is used to ‘displace’ the surface. We evaluate the map using the monochannel api in max, similar to how true displacement evaluates the map. This means that bump specific settings in the texmap used as the Bump Source will have no effect, since the source map isn’t being evaluated as a ‘bump’ map. For example, Bump Smoothing in Cellular will have no effect. A big advantage is that maps that don’t support bump properly should work when used in the analytic bump map.
  • ‘Displace Amount’: Controls the amount to displace the microtriangle when computing the new surface normal. This is in world space units and will change to reflect the unit display preferences (feet, cm, etc.) Generally this should be set to the amount you would displace the surface physically if you were using true displacement mapping.

Bi-Directional Sub-Surface Scattering
Bi-Directional SSS has been added to the Brazil2 Sub-Surface Scatter map. Essentially, this adds backscattering in addition to Forward scattering.
Additionally, the SSS Map can force a material to evaluate as 2-sided (required for proper SSS), and adds an Include/Exclude list so that you can ignore (internal) geometries when using this map.

Brazil2 Global Fog
In addition, we have added a volumetric (environment) effect that simulates a full fog that can react to lighting.
Another common complaint about 3ds Max’s volumetrics is how they blend; they don’t. They are composited in listed order. Global Fog, when using the Illumination option, will create a perfect blend between apparent volume light and fog. If your volume light is in the distance, the closer ambient fog (if used) will partially occlude it.

Originally Posted by minimaldocs by strangelove
  • General Parameters
    • Fog Background: This one should be obvious – controls whether fog should be applied over the background.
    • Fog Color: Effectively the diffuse color of the fog particles. The actual rendered color will still depend on the Ambient and (if illumination is enabled) illumination color from lights.
    • Ambient: This is the global ambient fog illumination. If you don’t have Illumination enabled, you may want to set this to White and forget about it. Where not illuminated, the rendered fog color will be FogColor*Ambient, regardless of whether illumination is on or not. I may move this control to the Illumination group and have it be ignored if illumination is disabled (there’s potential future features that make me hesitate to do this.)
    • Extinction: Controls how opaque the fog particles are. This determines how rapidly objects (and illuminated fog) are occluded by the particles in front. Higher values lead to effectively denser fog. This does NOT increase the amount of light reflected. That is controlled by Outscatter in the illumination control group.
    • Mode:
      • Manual: user specifies both the max steps and the step size. This is what the original version used.
      • Auto Max Steps: Max steps is computed based on the specified ranges and the step size to guarantee the entire range is covered. This is the recommended option in combination with setting up appropriate environment ranges for your scene.
      • Auto Step Size: Step size is computed based on the specified ranges and max steps to guarantee the range is covered. This is the default option for new scenes as default environment ranges are rather large.
  • Step Size: This is the distance in world units to step along the ray. At each point along the way, illumination is calculated if needed, and the overall opacity is accumulated. If the fog becomes totally opaque at some point along the way, ray marching terminates.
  • Max Steps: Controls the maximum number of steps we can take along a ray. If max steps is hit before the far range is reached, ray marching terminates anyway. If you are not seeing a light in the fog that is within the near/far ranges, you are probably being limited by max steps. Try increasing either max steps or step size.

[*]Ranges – 2 choices for controlling the distance over which the fog is applied. Note, that these ranges ALSO effect fog visible in reflection/refraction, just like normal Max fog. So if near is set to 100, the fog (and ray march) will not start until 100 units from the camera, or in the case of reflection, 100 units from the reflective surface, etc.

  • Use Camera Ranges: Near and Far ranges should be taken from the current camera environment settings.
  • Near/Far: manually set the ranges

[*]Illumination – This group controls the fog’s response to scene lights

  • Illumination On: When enabled, the fog will sample the lighting at each point along the ray march. This creates light beams just like volume light. Unlike volume light, the fog IN FRONT of the light will occlude the light beam, so the lighting effect will recede into the fog properly.
  • Outscatter: Effectively a multiplier for the light reflected from the fog. If light beams are too bright, lower this setting. If too dark, increase it
  • Symmetry: Controls the ‘phase’ or tendency of the fog to scatter light back toward the light, or away from the light. At a value of -1, all light is scattered back toward the light source (back scattered), at 1, all light is scattered away from the light (forward scattered.) This is easiest to see with an omni light in the fog, using colored attenuation. In most cases, a value of 0 works best (uniform scattering in all directions.)
  • Use All Scene Lights – When enabled all lights will be used by the fog. When disabled, only lights in the list will be used.
  • Lights group: This is just like the light list in Max’s volume light, without the retarded space wasting ‘pick light’ and ‘remove light’ buttons. We use these new fangled icon button things instead


  • In order to minimize banding issues, the ray marcher jitters the start sample position, this is the source of the noise. To reduce noise, decrease step size.
  • Brazil 2 lights will generally be faster than max lights, especially when using features that constrain the light, such as attenuation or focus.
  • Unlike Volume Light, all shadow types should work with all light types (e.g. ray shadows with Max lights works properly.)

[/list]Controlling the quality and speed of the fog render is a combination of the Step Size and Max Steps controls in the General group, as well as the Ranges. No fog or illumination occurs outside the ranges specified and step size coupled with max steps control the detail while limiting the number of samples into the fog.

Thin Translucency shader
This is useful for creating the backface illumination of thin translucency materials such as paper and cloth. It allows blurring the illumination, biasing the diffuse falloff, and several other effects.

Originally Posted by minimaldocs by Steve Blackmon

General parameters

  • Color (mappable): The translucency color of the material. This is effectively the backface diffuse color. When used in standard material’s colored self-illumination slot, or b2 advanced’s luminosity slot, this will completely determine the resulting backface illumination color. When used in the extra-light slot of b2 advanced this will typically be combined with the Cs (diffuse) color of the shader.
  • Diffuse Bias: Controls the sharpness of the diffuse falloff. The default value of 0.5 results in normal falloff. Lower values, from 0.0-0.5, will cause the diffuse falloff to occur very quickly, so areas will only receive light if the backface is pointing directly toward the light. This is useful for thick, rough materials such as satin or velvet, since it implies more self-shadowing of the material. Values from 0.5-1.0 will gradually flatten out the lighting. At 1.0 there is no diffuse falloff. This is useful for materials like paper, where the light scatters through the material and there is little surface self-shadowing.
  • Diffuse Level: This is a simple multiplier for the diffuse lighting.

Illumination Blur parameters

  • On: Enables illumination blur (go figure)
  • Blur Amount Map: Acts as a multiplier for the Radius.
  • Radius: The distance in world units to blur the illumination.
  • Surface Offset: A fixed distance in world units to offset the illumination along the surface normal for the backface. This has two purposes – it helps mimic the distortion of the backface lighting that would occur if the surface had thickness, and it acts as a material level shadow bias, to prevent self-shadowing issues.
  • Auto Bias: This computes a surface offset for each illumination point based on how far that point is from the original point being shaded. When illumination is being gathered for points far from the actual point on the object, auto bias creates a larger surface offset. For points very near the actual shade point auto bias only adds a small offset. This provides good self-shadow artifact control without completely sacrificing contact shadows. It also tends to create an interesting distortion of the blurred illumination/shadows based on closeness of the translucent surface to the shadow casting/etc object.
  • Sampling Controls: The full set of min/max samples, adaptive on, and max error controls everybody should be familiar with by now.


Of course the fun doesn’t stop there… there’s more in the line-up that’s alpha material and thus not in the beta yet, such as…

Brazil2 Volume Light
This is our implementation of a Volume Light. A common complaint about the 3ds Max Volume Light is that it is purely additive. The Brazil2 Volume Light adds a Blend compositing mode that more faithfully reproduces lighting within dusty or thick foggy, rather than misty, environments.
We also did away with the absolute necessity to pick lights (although you still can) – it features a “Use All Scene Lights” option.
Last but not least, fBM (fractal Brownian Motion – google it!) noise types are included in the Brazil2 Volume Light, allowing for more believable fog/dust noises without having to set up expensive procedural projector maps for the lights.

Physical Sky environment
Your basic physical sky with quick setup of any sky environment. Great for exterior renders to make the Sky Light shading just a little more interesting than a single color, and without having to fuss with gradients or third party HDR images.

and more which I just can’t post about yet