Transform
今日は、ビデオの33番目の「Transform Constraints – Blender 2.80 Fundamentals」。 このビデオは、何故か字幕表示がオフになっていて、残念。
今回のビデオの解説したことは、Bone Constraintでも同じように動作する。
Transformation
Copy Locationは、参照先と元の移動による連動、Copy Rotationは、参照先と元の角度の連動でした。
Transformationは、参照先を移動して元の角度が変化するような連動が可能になります。
準備として、Cubeを選択してG, XキーでCubeを少し前方に移動する。Shift+A > Mesh > MonkeyでSuzanneを追加する。
Suzanneを選択して、PropertiesエディタのObject Constraintタブをクリックする。Add Object Constraintをクリックして、Transformationを選択する。
TargetをCubeに設定し、Map FromをLocationに設定し、X Maxを10mに設定します。Map ToをRotationに設定しX Source Axis Maxを90度に設定します。
これで、CubeのX座標が変更されるとそれに沿ってSuzanneがX軸を中心に回転するようになります。
実際にCubeを選択してG, XキーでX軸上を移動すると動作を確認できます。
ただ、このままだとX=0から10mの間でしか変化しませんので、それ以上、それ以下でも変化するようにするには、Extrapolateにチェックを入れます。
Limit Distance
続いて、Limit Distance。Suzanneを選択して、Transformationの右のXをクリックして削除します。そして代わりにLimit Distance を選択します。
Suzanneを選択して、TargetをCubeに設定します。これで、Distanceに自動的にCubeとの距離が登録されますので、Suzanneをそれより遠くに移動できないように制限がかけられた状態になります。(紐で繋がれているような感じです。)
G, Shift+ZキーでSuzanneをXY平面上に移動させて確かめると雰囲気を掴み易いです。
Clamp RegionをOutsideに変更するとその逆で、Distanceに設定した距離より近づくことができなくなります。(バリアを張られているような感じです。)
同様に G, Shift+ZキーでSuzanneをXY平面上に移動させて確かめるとわかります。
Clamp RegionをOn Surfaceに変更すると、Distanceに設定した距離を保った移動しかできなくなります。(棒で繋がれているような感じです。)
同様に G, Shift+ZキーでSuzanneをXY平面上に移動させて確かめるとわかります。
Maintain Volume
続いてMaintain Volume。Suzanneを選択して、Limit Distanceの右のXをクリックして削除します。そして代わりに Maintain Volume を選択します。
Maintain Volumeを日本語にすると「体積を保つ」になります。作例ではFree AxisがYに設定されているので、Sキーで拡大縮小しようとするとY軸に沿って拡大縮小されます。Y軸に沿って拡大されたときは、体積を保つためにXZ軸上で縮小されます。