Stop poses from overriding my pose locks.
lukon100
Posts: 855
Some pose makers have found a way to override my locked pose positions, for example, the feet - locked for high heel wearing.
How do these pose makes do this?
How can I override their overrides?

Comments
I would check if they are using Pose controls because after a quick test, locking transforms on a bone will not prevent pose controls to change the locked parameters.
Thanks, Elor. That makes sense. I have already noticed that pose controls override bone locks. So I guess that certain vendors incorporate pose control settings into their pose presets.
Is there a way to convert such pose-control using prests into versions of those presets that don't use pose controls? Like, If I pose the figure and manually override the pose controls in the pose preset, and then save that as a pose preset, does my new pose preset get rid of the calls to any pose controls?
Yes, as long as you include the proeprties in the options dialogue (assuming you make choices rather than saving every setting).
In other words, Locking bones Transforms cannot prevent them from being triggered by ERC linked controllers ~ That is not set by pose vendors but just the way that DS works...
So a better way to "override the overrides" is to : in addition to locking the bones, also make them "override any controllers" by clicking the chain icon beside the lock icon ~
(Vendors or you can change Pose Controls to pure transforms by using Bake to Transforms... but that'll take more time. )
Edit: You also can use a Daz Script to do it on a selected Bone ~~ Below script sets Override as On.. with the selected Bone as well as its children bone ~
---------------------------------------------------------------------
// DAZ Studio version 4.24.0.4 filetype DAZ Script
(function(){
var oHelper = new DzSceneHelper();
var aSelected = Scene.getSelectedNodeList();
if(!aSelected || aSelected.length == 0){
MessageBox.information("No nodes selected.","Override Controllers","");
return;
}
var aNodes = [];
for(var i = 0; i < aSelected.length; i++){
var oNode = aSelected[i];
if(!oNode)continue;
if(aNodes.indexOf(oNode) == -1)aNodes.push(oNode);
var aChildren = oNode.getNodeChildren(true);
for(var j = 0; j < aChildren.length; j++){
if(aChildren[j] && aNodes.indexOf(aChildren[j]) == -1)aNodes.push(aChildren[j]);
}
}
var nCount = 0;
for(var n = 0; n < aNodes.length; n++){
var aProps = oHelper.getPropertiesOnNode(aNodes[n],false);
for(var p = 0; p < aProps.length; p++){
var oProp = aProps[p];
if(!oHelper.isTransformProperty(oProp) || oProp.isHidden())continue;
oProp.setOverrideControllers(true);
nCount++;
}
}
MessageBox.information("Override Controllers >> ON\n\nVisible Transforms: " + nCount,"Set Override Controllers","");
})();