Slim 6.5 Release Notes

New Features
Bug Fixes
Known Issues
Additional Changes in 6.5.1
Additional Changes in 6.5.2

New Features
  • Intregrated Image-Based Lighting
    • Image-based lighting is no longer confined to a special template, but is instead integrated into all major shading models, including the totally customizable Delux shading model. These shading models can be illuminated by both traditional lights and "Environment" lights, allowing you to control image-based lighting across multiple shaders.
  • Integrated AOVs
    • Slim's shading model templates now generate arbitrary output variables (AOVs) for components such as diffuse, specular, reflection, etc. These AOVs flow through the whole network, and are properly accumulated and composited through layering nodes. By enabling secondary channels in Render Globals, you can use the additional images generated to adjust and enhance your imagery.
  • Bundles
    • Bundles allow you to simplify the view of your network by collapsing a region of the network into one entity. When displayed in the Appearance Editor, a bundle will display all of the external parameters within in a user-customizable hierarchy.
  • Shader “Instances”
    • Instances allow you to work with several variations of a single shader. An instance is a lightweight copy of a slim network. It uses the same shader as the original network, but maintains its own set of values for external parameters. Instances of a network can be easily updated when the network is changed using the "Update Instances" command.
  • Smaller Palette Files
    • Palettes can now be stored in a new “Minimal” mode, where only changes to parameters are saved. These palettes are as much as 50% smaller than before and will load much faster into a scene.
  • More Flexible Palette Editor
    • The “List View” of the Palette Editor has been revamped, and can better handle changes to the window size. It can also be used in combination with the Graph Editor.
  • Revised Appearance Editor
    • The display of parameters within the Appearance Editor has been overhauled. The Appearance Editor can now display more parameters in less space, allowing you to see more of your shader without scrolling.
  • Streamlined Parameter Editing
    • All operations on parameters (editing value providers, controlling tcl expressions, creating connections) are now available from one menu. Create connections in just one step. And you can easily revert any parameter to its default value.
  • Automatic Type Conversion
    • Directly connect a float node to a color parameter without any explicit conversion. Slim now performs type conversion between floats and colors, between colors and shadingmodels, etc. Conversion behavior is specified via preferences and special conversion templates.
  • Preview Render Customization
    • New preferences allow you to further customize your preview renders. You can now control the textures used on the background environment, and select the resolution of preview renders. When using an external renderer, you can replace Slim's standard object and lights with RIB archives.
  • Better Connection Menus
    • The parameter connection menu is now organized in the same customizable manner as the "Create Appearance" menu.
  • More Control for Commands
    • Custom commands can now be enabled and disabled using the -enabled argument with a tcl expression that is evaluated when posting the menu. Additonally, commands can be configured to activate using hotkeys via the -accelerator argument.
  • New “Generative Function” Templates
    • GenerativeFunction templates give control over the execution of connected functions from anywhere in the graph. Use them to write more efficient shaders, and to make powerful templates like Slim's included "Bakeable" template.
  • Inline Connections
    • Write modular templates by taking advantage of inline connections. Inline connections display the parameters of connected function right within its parent appearance. The "Delux" shader takes great advantage of inline connections.
  • More Flexible Layering
    • The new "LayerUltimo" layering template provides an efficient layering algorithm that short-circuits calculations in unseen layers. But unlike the version of this template in previous versions, LayerOptimo can be connected anywhere within a network, allowing you to create (efficient) layers of layers.
  • New Slim Templates:
    • SL Box - Create your own custom functions without writing a Slim template. SL Box templates allow you to create parameters, connect them, and write the shading language code to combine them, all from within the Appearance Editor.
    • Delux - A powerful new shading model allows multiple shading components (diffuse, specular, rim, etc.) to be combined. For example tutorials outlining the new workflow, refer to Creating a layered shader with Delux and Ray Tracing with Delux.
    • Bakeable - Allows any part of a network to be baked into a 3D brickmap or a 2D texture file (based on ST coordinates). 
    • Float Spline - A new float spline template provides interactive editing.
    • Ambient Light - A basic ambient light, which can be useful for performing simple ambient occlusion calculations.


  • User Interface
    • RIB Boxes and TCL Boxes can now be edited directly within the Appearance Editor.
    • "Duplicate Node", when called on a collection, will now only duplicate itself and its children.
    • "Flatten" will now prompt for a destination file.
    • More commands in the Graph Editor are undoable, including "Clean Up Graph".
    • New "Auto-Reparent" feature moves shared nodes out of collections.
    • The Texture Editor now features a Precision setting.
    • "Reload Template" now updates default values.
    • The Appearance Editor now indicates which values have been changed from their default.
    • A new "Preserve Values" command protects an appearance's values from template reloads.
    • High dynamic range images, including OpenEXR, are better supported.
    • Slim now prevents the user from entering an empty string for a parameter or appearance label.
    • A new preference controls whether Palette Editors are raised when opening a scene.
    • The "Show Palettes" entry in the RenderMan menu is now a cascade menu with the name of each palette.
    • Changes to permissions of the palette no longer cause the display of dialog boxes.
    • The Palette Editor now displays tooltips for Appearance names.
    • The Appearance Editor now displays the palette name plus any grouping in its title bar.
    • The “Import Appearance” menu is now configured using the same mechanism as the “Create Appearance” menu, and can be customized in the same way.
    • The Help menu is now configurable using the new HelpURLs preference.
  • Operation
    • RIB Attributes can now be disabled. This ability extends to RIB Boxes and TCL Boxes.
    • Slim can automatically reload appearances when it detects that a template has changed.
    • New SetInstanceExpressionContext procedure allows sites to define their own global variables used in expressions.
    • The "Casts Shadows" attribute now only controls the output of a Surface, rather than that of the entire Ensemble.
    • Ensembles with connected lights will skip preview lights for swatch renders.
    • Textures are now sharper for surface shaders.
    • Behavior for checking when shaders are dirty has been improved, especially when using distributed RIBGen.
    • Slim now cleans up any temp files that it creates.
    • Slim now saves backups of palettes when Maya crashes.
    • Occlusion nodes now support baking to brickmaps.
  • Template Writing
    • The output of shader compiler warnings can now be controlled with the CompilerWarningLogLevel preference.
    • You can now define a range for value provider, or lock it.
    • A new ResourceDirs preference can be used to specify directories to search for icons used by custom types and by customuis.
    • Slim now supports the GeometricApproximation:motionfactor attribute.
    • New getpropertyinfo command can be used within a dynamic template to get property information like type, provider, user data, and more.
    • Templates can now be marked as obsolete without using the "display hidden" tag.
    • Default connections in templates can now use a versionless template spec (e.g. pixar,SurfacePoint) to always request the newest version of the template.
    • New AddParam customui can be used to easily create dynamic templates.


Bug Fixes
  • User Interface
    • Filters in the Palette Editor now work properly for nodes in collections.
    • Moving or deleting a layer in the Layer templates now properly triggers a recompile.
    • Rich Collection UI better displays external parameters grouped within collections.
    • Importing a scene no longer raises all of the Palette Editors.
    • Requesting to open an appearance in a text editor (via Control-Shift-Double-Click) no longer generates an error if the "Expert Menus" preference is off.
    • Redundant nodes are no longer created when dragging networks and subpalettes to a new palette.
    • Dragging a subpalette to another palette properly remaps the connections in the new palette.
    • Ampersands in file and texture entries are no longer replaced by %v.
    • The value editor for a parameter with a missing connection will no longer generate errors.
    • Hotkeys for "Back" and "Forward" in AppearanceEditor now work reliably.
  • Operation
    • Improved stability for preview renders on Linux.
    • The "Combine" template now properly handles a template reload.
    • "Save As...", when executed on a read-only palette, will no longer save an empty file.
    • "Upgrade Template" now has better checking for whether or not an upgrade is necessary.
    • The MayaProjection template can now be used from within light shaders.
    • slim FindPalettes now checks that the palettes it returns have not been deleted.
    • slim -workspace now works and can be used to specify the root of your workspace.
    • Workspace server search paths can now be queried.
    • Disabled Undo journaling when evaluating a msghandler. This fixes errors that occurred when evaluating msghandlers that performed several (i.e. more than 50) operations, and also provides more accurate behavior for Undo.
    • Substitution in msghandlers properly handles multiple appearances of %obj.
    • Palettes edited using slim -console -hide will now preserve UI information like graph editor layout, icons, etc.
    • Reloading a template with default connections multiple times no longer generates an error.
    • The ::INSTANCENAME variable can be used reliably within TCL expressions.
    • msg ignored (blocked): slim dirty messages have been reduced when rendering a freshly-loaded scene.
    • Background errors are now reported verbosely. No need to setenv RATDEV.
    • FindUpgrade now returns an empty string when an upgrade isn't necessary.
    • Search/Replace command now better handles an unrecognized filter.
    • Non-linear deformations no longer cause Slim to lose shader connections. 
    • RSLDefine and RSLInclude now work for dynamic functions.
    • Executing Frame All/Selected in an empty graph editor no longer generates an error.
    • Environment maps now properly retain floating point precision of HDR images.
    • Slim no longer sends erroneous “dirty” warnings during shutdown in server mode.
    • Shaders attached to Maya shading groups will now make their textures.
    • On Linux, links in the Help menu are now opened using:
      • RATBROWSER, if defined, otherwise:
      • gnome-open, if present, otherwise:
      • Firefox


Additional Changes in 6.5.1
  • A Max Variation parameter has been added to Indirect Illumination and Occlusion templates.
  • Selecting multiple nodes in graph view is appreciably faster.
  • The precision for the ColorRamps and Spline user interface has been increased.
  • A Blinn shading model has been added.
  • The Indirect Illumination template now has a HitMode parameter. This can be set to either shader or Cs.
  • Slim previews can now be aborted when using an external renderer.
Bug Fixes
  • RIB Generators can once again be reloaded from the Appearance Editor.
  • An issue with Slim not dirtying shaders when executing a "Revert" has been fixed.
  • The parameters for the BackScattering and Rim shading component templates are now set to varying.


Additional Changes in 6.5.2
  • The speed of selecting and deselecting nodes when the graph view is enabled has been improved.
  • Ensembles can now import .slo files for volume shaders.
Bug Fixes
  • An issue that caused black artifacts to show up when using the Velvet shader has been fixed.
  • A bug that prevented subsequent swatch renders when removing parameters from the Combine template has been fixed.



Pixar Animation Studios
(510) 752-3000 (voice)   (510) 752-3151 (fax)
Copyright © 1996- Pixar. All rights reserved.
RenderMan® is a registered trademark of Pixar.