Share

Parameter Block Versioning

The parameter block versioning system - also known as parameter block revisioning - is implemented as post-load callback that is triggered by 3ds Max when the current parameter block version differs from the previous version. The versioning system is triggered when the following conditions are met:

  • The new parameter block uses the P_VERSION flag; and
  • The old parameter block is either:
    • Not using P_VERSION, or
    • Has a non-matching version number

The version number is an integer supplied in a parameter block descriptor (ParamBlockDesc2) immediately following the flags field and before the parameter block id number.

When the parameter block versioning system is triggered the following occurs

  • References are mapped to the old numbering until after the load and post-load callbacks are complete
  • The new numbering is used afterwards, all P_OBSOLETE references are dropped, and reference dependants are notified of the updated numbering

Was this information helpful?