Haply::Inverse::Unity::Inverse3Body
Inverse3デバイスのボディの向きを管理し、指定されたGameObjectにリアルタイムの向きの更新を適用する。 詳細はこちら
Haply.Inverse.Unity.CursorBehaviour、MonoBehaviourを継承しています。
保護された機能
名称 | |
---|---|
オーバーライド void | カーソルの更新() GameObjectの回転を、関連するInverse3デバイスの現在の向きに合わせて更新する。 |
仮想オーバーライド void | AddDeviceListeners() デバイスにリスナーを追加します。 |
仮想オーバーライド void | RemoveDeviceListeners() デバイスからリスナーを削除します。 |
保護されたプロパティ
名称 | |
---|---|
オーバーライドブール | IsUpdateCursorRequired 次の FixedUpdate 呼び出し時に UpdateCursor メソッドを呼び出す必要があるかどうかを示します。 |
パブリック属性
名称 | |
---|---|
フロート | 回転分解能 GameObjectを回転させるのに必要な向きの最小変化量。 |
その他の継承メンバー
関数 継承Haply.Inverse.Unity.CursorBehaviour
名称 | |
---|---|
仮想ゲームオブジェクト | GetModelPrefab() 起動時にインスタンス化されるべきプレハブを取得します。 |
仮想空白 | 目覚め() |
仮想空白 | オンイネーブル() |
ボイド | 更新() |
ボイド | 固定更新() |
パブリック プロパティ 継承Haply.Inverse.Unity.CursorBehaviour
名称 | |
---|---|
デバイスビヘイビア | デバイス カーソルを操作するデバイス。 |
トランスフォーム | モデルプレハブ この振る舞いが自動的にインスタンス化する、このカーソルに表示するカーソルモデルのプレハブ。 |
トランスフォーム | モデル親 このビヘイビアがインスタンス化されたときに、モデルプレファブの親として使用するトランスフォーム。 |
トランスフォーム | モデル シーン内のカーソルモデルのインスタンス。 |
ブール | HideControllerModel カーソルモデルを非表示にするかどうか。 |
フロート | 半径 モデルの半径を取得します。 |
プロパティ 継承Haply.Inverse.Unity.CursorBehaviour
名称 | |
---|---|
ブール | IsDeviceSet デバイスが設定されているかどうかを示します。 |
詳細
class Haply::Inverse::Unity::Inverse3Body;
Inverse3デバイスのボディの向きを管理し、指定されたGameObjectにリアルタイムで向きの更新を適用する。
Inverse3Bodyコンポーネントは、関連するInverse3デバイスからの向きの変化をリッスンし、その更新をアタッチされているGameObjectのトランスフォームに適用する。これにより、デバイスの物理的な向きを仮想環境内で同期して表現することができる。
デバイスから受信したオリエンテーションデータは、Inverse3.coordinateConverterを通してアプリケーションの前に修正することができ、軸の並べ替え、否定、回転オフセットの適用などの調整を可能にする。この柔軟性により、仮想表現をユーザーの期待や仮想シーンの仕様に合わせることができます。
オリエンテーションの更新の感度は、GameObjectの回転を更新するために必要なオリエンテーションの最小変化を定義するrotationResolutionによって制御することができます。これは、ジッタや不要な更新を減らし、方向表現の滑らかさを向上させるのに役立ちます。
このコンポーネントが正しく機能するには、関連するInverse3デバイスが必要である。デバイスからの向き変更イベントを受信し、それに応じてGameObjectの向きを更新する。デバイスがセットされていなかったり、接続が切れたりすると、このコンポーネントはGameObjectの向きを更新しなくなる。
保護された関数のドキュメント
関数 UpdateCursor
override void UpdateCursor()
GameObjectの回転を、関連するInverse3デバイスの現在の向きに合わせて更新する。
このメソッドは、Inverse3デバイスからの最新の向きデータを、Inverse3.cordinateConverterで指定された修正を考慮して、GameObjectのトランスフォームに直接適用する。このメソッドは、rotationResolutionで定義されたしきい値を超えるようなデバイスの向きの大きな変化があるたびに呼び出されるべきである。
関数 AddDeviceListeners
virtual override void AddDeviceListeners()
デバイスにリスナーを追加する。
を再実装しています:Haply::Inverse::Unity::CursorBehaviour::AddDeviceListeners
カスタムオリエンテーションリスナーを追加するためにオーバーライドされます。
関数 RemoveDeviceListeners
virtual override void RemoveDeviceListeners()
デバイスからリスナーを削除する。
を再実装します:Haply::Inverse::Unity::CursorBehaviour::RemoveDeviceListeners
カスタムオリエンテーションリスナーを削除するためにオーバーライドされます。
保護された財産の文書化
プロパティ IsUpdateCursorRequired
override bool IsUpdateCursorRequired;
次の FixedUpdate 呼び出し時に UpdateCursor メソッドを呼び出す必要があるかどうかを示します。
このプロパティは、カーソルの向きの更新が必要な場合に真を返す。rotationResolutionで定義された閾値を超えるデバイスの向きの大きな変化があった場合に設定される。
公開属性のドキュメント
変数rotationResolution
float rotationResolution = 0.025f;
GameObjectを回転させるのに必要な向きの最小変化量。
方向更新の感度を定義します。値が小さいと更新頻度が高くなり、値が大きいとジッターは減少するが応答性が低下する。