I have tried locking parameters by both animation and value. Everything works fine when the parameters are in a model which is local to the scene. Querying Parameter.LockLevel will return siLockLevelAnimation or siLockLevelManipulation respectively - which is exactly what I want and expect.
When the model is referenced into the scene Parameter.LockLevel returns siLockLevelAll for all parameters in the referenced model, not just those I locked. Which is another way of saying I have zero ability to determine which parameters were animation/value locked and which were not. When I try to physically adjust values or apply animation, there are no indicators in the UI telling me which parameters are locked. It's as if the locks were never set. Matt From: softimage-boun...@listproc.autodesk.com [mailto:softimage-boun...@listproc.autodesk.com] On Behalf Of Raffaele Fragapane Sent: Thursday, June 27, 2013 6:54 PM To: softimage@listproc.autodesk.com Subject: Re: Keyable vs. Animatable In that case the locks are simply respected once the model is referenced in our experience. Just lock all levels. We have hundreds of rigs piled up that do exactly that with no work or propietary stuff or tricks other than setting lock-all on those parameters before they are checked in. There is ONE catch, which is constraints will -always- be capable of altering a local transform as they operate upstream, so if you lock scale across the board and constraints are allowed in the delta, it's possible to work around a lock by scale or pose constraining to something to transmit the values and then remove the constraint. That can get annoying as those values can't, obviously enough, be reset in any other way than doing the same thing again. Other than that, locks worked fine for us on all versions we used between 6.5 and 2013. Is that not the case for you? On Fri, Jun 28, 2013 at 11:37 AM, Matt Lind <ml...@carbinestudios.com<mailto:ml...@carbinestudios.com>> wrote: I want to set a value on a parameter and lock it, then export the model so when it is referenced into a scene the user cannot change its value. The parameter value should only be editable when the TD modifies the rig as a local model. Users using the rig as a referenced model should not be able to modify the parameter value. Matt From: softimage-boun...@listproc.autodesk.com<mailto:softimage-boun...@listproc.autodesk.com> [mailto:softimage-boun...@listproc.autodesk.com<mailto:softimage-boun...@listproc.autodesk.com>] On Behalf Of Raffaele Fragapane Sent: Thursday, June 27, 2013 6:33 PM To: softimage@listproc.autodesk.com<mailto:softimage@listproc.autodesk.com> Subject: Re: Keyable vs. Animatable So you want to lock it in a referenced context? Locks on local are respected once referenced, we do that all the time. Locking after reference I'm not sure it's possible, there's nothing in the delta to contain it that I know of (but I might be wrong). If you're not talking hundreds and hundreds your best bet is a constant expression. That will be respected/carried by the delta. You can actually use quite a few of those with no performance impact, they are fairly cheap and don't really pull anything upstream. On Fri, Jun 28, 2013 at 11:22 AM, Matt Lind <ml...@carbinestudios.com<mailto:ml...@carbinestudios.com>> wrote: Edit: I want a capability setting that allows a value to be set by a TD, then locked so it cannot be edited by animators or tools used by animators. Matt From: softimage-boun...@listproc.autodesk.com<mailto:softimage-boun...@listproc.autodesk.com> [mailto:softimage-boun...@listproc.autodesk.com<mailto:softimage-boun...@listproc.autodesk.com>] On Behalf Of Matt Lind Sent: Thursday, June 27, 2013 6:20 PM To: softimage@listproc.autodesk.com<mailto:softimage@listproc.autodesk.com> Subject: RE: Keyable vs. Animatable I checked the user's guide. siKeyable means the parameter will appear in the 'KP / L' . siAnimatable means the parameter can be animated. I don't understand why the definitions are not in the SDK guide. Anyway, we were locking parameters on character rigs using animation locking and value locking only to discover that the locks are not respected when the parameters are inside of a referenced model. ARGH!!!! (si 2013 SP1 - 32 bit) Sooooo....using Parameter Capabilities, how does one 'value lock' a parameter inside a referenced model? I want to flag a parameter so it's value can be changed by a user, but cannot be animated, and tools can read/respect the flag so it knows not to overwrite the value. Is setting siAnimatable to false enough? Matt From: softimage-boun...@listproc.autodesk.com<mailto:softimage-boun...@listproc.autodesk.com> [mailto:softimage-boun...@listproc.autodesk.com] On Behalf Of Edy Susanto Lim Sent: Thursday, June 27, 2013 6:09 PM To: softimage@listproc.autodesk.com<mailto:softimage@listproc.autodesk.com> Subject: Re: Keyable vs. Animatable siKeyable is mainly for the parameter visibility flag in the keying panel I guess.. http://softimage.wiki.softimage.com/sdkdocs/sicppsdk/html/group__siCapabilities.html On Fri, Jun 28, 2013 at 9:01 AM, Matt Lind <ml...@carbinestudios.com<mailto:ml...@carbinestudios.com>> wrote: What is the technical difference between a parameter flagged as siKeyable vs. siAnimatable? I'm interpreting it to mean Keyable only determines if an FCurve can be set on the parameter whereas Animatable defines whether a parameter can receive any kind of animation data. This sound correct? Matt -- Edy Susanto Lim TD http://sawamura.neorack.com -- Our users will know fear and cower before our software! Ship it! Ship it and let them flee like the dogs they are! -- Our users will know fear and cower before our software! Ship it! Ship it and let them flee like the dogs they are!