本日はMRTKExamples の調査枠です。
Elastic System Examplesを調査します。
〇Elastic System Examplesとは?
Elastic System ExamplesはMRTKで物理シュミュレーションを提供する機能を見ることができるデモシーンです。
〇Advanced Configurations
[Advanced Configurations]は[Basic ObjectManipulator Integration]同様3つのオブジェクトで構成されています。 そのうち4D Quaternion Snappingを除く二つに関しては以前中身を除いています。
〇3D Spring Extent
〇3D Interval Snapping
〇4D Quaternion snapping
[4D Wuaternion snapping]オブジェクトでは繰り返しオイラー角でののスナップ間隔が指定されています。
このオブジェクトは他のElasticSystemのオブジェクトと違い移動することはできません、しかしその場で回転を与えることでスナップが働きます。
・回転の機能
MRTKで提供されている機能でオブジェクトをつかむことを検知する[NearInteractionGrabbable]コンポーネントと[Object Manipulator]コンポーネントによってオブジェクトを動かすことができます。
しかしこの状態ではオブジェクトが回転だけではなく移動します。
そこで移動の制御を行うための[MoveAxisConstraint]コンポーネントがアタッチされています。
ここで設定された値で移動が制限(移動しなくなる)されます。
このコンポーネントと設定を行うことで移動をせず回転のみを行う設定になっています。
〇Elastic System
[Elastic Manager]コンポーネントでは[Manipulation types using elastic feedback:]に[Rotate]が設定されており、回転の運動に対して物理シュミュレーションが行われるようになっています。
[Rotation Elastic Extent]の[Snap Points]で物理シュミュレーションの設定が行われています。
[MoveAxisConstraint]コンポーネントと[Elastic Manager]によって4D Quaternion Snappingの動きを実現しています。