_boundScale(1)
{
setReferenceFrame(RELATIVE_RF);
+ // see osg::Transform doc: If the transformation matrix scales the subgraph
+ // then the normals of the underlying geometry will need to be renormalized
+ // to be unit vectors once more.
+ osg::StateSet* stateset = getOrCreateStateSet();
+ stateset->setMode(GL_NORMALIZE, osg::StateAttribute::ON);
}
SGScaleTransform::SGScaleTransform(const SGScaleTransform& scale,
fr += 3;
else
return false;
- scale.setCenter(SGVec3d(center));
+ scale.setCenter(toSG(center));
}
if (fr[0].matchWord("scaleFactor")) {
++fr;
fr += 3;
else
return false;
- scale.setScaleFactor(SGVec3d(scaleFactor));
+ scale.setScaleFactor(toSG(scaleFactor));
}
return true;
}