This is an old revision of the document!
Object Property Overrides is a way to control more properties than are currently supported by the Object Properties Per pass, new for version 6 of RPM.
It provides a way to control modifier properties (ie on, off, turbosmooth iterations reduced), texturemap settings (ie subsurface settings of a vray SSS dropped for a preview), material settings, and baseobject properties for previews and renders.
The settings in the UI are not per pass, they are global - each entry can be assigned which passes it affects, along with filtering for the name of the item being modified, as well as the name of the object the item is assigned to (ie both the modifier name, and the object the modifier is assigned to, can be used to control what is updated.
Not per object - per class
The most important aspect is to understand that you are not picking which objects to affect - as you do with the Object Properties Per Pass controls - but which class of object to modify. After that it is what property of that class to modify, and what to set the property to. All objects of that class in the scene are potentially modified at this point, and there are name filters so you can limit it to affecting just the items you want.
In addition, there are separate settings for previews and renders, and you can limit each entry to one or more passes. Functions can be assigned for setting values, filtering by name, and also which passes to operate on.
These property settings are applied to Xref objects in the scene in additional to regular objects, though not Xref Scenes (Xref Scene support may be added in a future version if people need it).
Here's a snapshot of the UI as it stands in version 6 of RPManager:
Creating Entries
To populate the list, select an object with the properties/modifiers/textures you want to control and use the… buttons to bring up a list of
items that can be controlled, and pick from those. If needed, create a temp object with modifiers/settings needed. if more convenient to build
the control data.
Here is a screenshot of the list shown when an object with 3 modifiers is selected, and the 'Modifiers…' button is pressed:
TODO: Explain the UI itself with the various options for calculations, how to modify strings with the replace option, how to use the functions, etc :)
Once items are picked based on the selected object, they appear in the list. Selecting the item brings it's controls into the area below the list, where you can set what the value is set to for a preview ('Value Pr.') or a render ('Value Rn.). Float values can be set, divided by, multiplied by, added to or subtracted from. Booleans can be set or toggled - the dropdown lists change based on the class of the property being modified.
The 'Name' option allows you to filter which objects are going to be affected using name matching (startswith, endswith, contains, equals, etc.). Note these filters are not case sensitive, and can be comma separated lists (or the name of a function for greater flexibility)
The 'Object' option allows you to filter which objects are going to be affected using name of the object that the object we are actually affecting is assigned to: ie it might be a modifier named 'Turbosmooth', but this is the name of the object the turbosmooth is assigned to (ie 'Box001').
Passes allows you to limit which passes are affected, this should be a comma separated list of indices or pass names. ie “1,2,5”, or “diffuse,matte”
For the 'function call' item in the dropdowns, you an enter the name of a function to run. This function is expected to have a specific structure, and to make it easy if you hit the 'Fn' button below the list a function is created in a new maxscript window with some explanatory comments within it.
Object Properties, as distinct from the override control described here, can be controlled via the Per Pass Property Capture/Restore system.