This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
objectprops:objectpropertiesoverride [2014/05/31 15:30] grantadam created |
objectprops:objectpropertiesoverride [2023/07/11 00:39] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Object Property Overrides ====== | ====== Object Property Overrides ====== | ||
\\ | \\ | ||
- | 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. | + | Object Property Overrides extends RPM's control to many more properties than are currently supported by the Object Properties Per Pass system, and is 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. | + | It provides a way to control modifier properties (on, off, turbosmooth iterations reduced, etc.), texturemap settings (subsurface settings of a vray SSS dropped for a preview, bitmap paths), material settings, and baseobject properties for both previews and renders, and these changes are applied just for that particular preview/render. |
+ | |||
+ | Almost all object/modifier/material/texmap properties are supported, a list of avaiable properties is procedurally generated based on selection (see section below on creating entries). | ||
+ | |||
+ | An important point to note is that the settings in the UI are not per pass, they are global and affect all matching objects in the scene if not filtered - each entry can be assigned which passes it affects, along with filtering by the name of the item being modified, as well as bythe name of the object the item is assigned to, to control exactly what properties are modified. | ||
- | 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**\\ | **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. | + | 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 across the entire scene 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. | 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. | ||
Line 15: | Line 18: | ||
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). | 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: | + | Here's a snapshot of the UI as it stands in version 6 of RPManager:\\ |
- | + | {{objectprops:rpmobjectpropoverridescreen.png|}} | |
- | {{objectprops:rpmobjectpropoverridescreen_lower.png|}} | + | |
\\ | \\ | ||
\\ | \\ | ||
Line 30: | Line 32: | ||
{{objectprops:pickingobjprop.png|}}\\ | {{objectprops:pickingobjprop.png|}}\\ | ||
+ | **Editing Entries**\\ | ||
+ | \\ | ||
+ | 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. | ||
- | 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 :) | + | Object Properties, as distinct from the override control described here, can be controlled via the [[objectprops:perpasscapturerestore|Per Pass Property Capture/Restore]] system. |