本文へスキップ
バージョン: 2.2.0

Haply::Inverse::Unity::Inverse3Body

Inverse3デバイスのボディの向きを管理し、指定されたGameObjectにリアルタイムの向きの更新を適用する。 詳細はこちら

Haply.Inverse.Unity.CursorBehaviour、MonoBehaviourを継承しています。

保護された機能

名称
オーバーライド voidカーソルの更新()
GameObjectの回転を、関連するInverse3デバイスの現在の向きに合わせて更新する。
仮想オーバーライド voidAddDeviceListeners()
デバイスにリスナーを追加します。
仮想オーバーライド voidRemoveDeviceListeners()
デバイスからリスナーを削除します。

保護されたプロパティ

名称
オーバーライドブール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を回転させるのに必要な向きの最小変化量。

方向更新の感度を定義します。値が小さいと更新頻度が高くなり、値が大きいとジッターは減少するが応答性が低下する。