Haply::Inverse::Unity::DeviceBehaviour
インバース・デバイスの基本クラスを表し、共通の機能と状態管理を提供する。
MonoBehaviourを継承する。
継承元:Haply.Inverse.Unity.Inverse3、Haply.Inverse.Unity.VerseGrip
イベント
名称 | |
---|---|
Action< DeviceBehaviour, Ret > | エラー・イベント() |
接続ステート・デリゲート | ConnectionStateChanged() デバイスの接続状態が変更されたときにトリガーされるイベント。 |
Action< DeviceBehaviour, DeviceConnectionState, DeviceConnectionState > | ConnectionStateChangedAsync() デバイスの接続状態が変更された直後にトリガーされるイベント。 |
公共機能
名称 | |
---|---|
デリゲート・ボイド | ConnectionStateDelegate(DeviceBehaviourdevice, DeviceConnectionState state, DeviceConnectionState prevState) デバイスの接続状態の変更を処理するためのデリゲート。 |
ボイド | セットアップの実行() 次のフレームでセットアップを実行することを示す。 |
オーバーライド文字列 | ToString() オブジェクトの文字列表現を返し、オブジェクトの名前、クラス・タイプ、デバイス ID を含む、人間が読める説明を提供します。 |
保護された機能
名称 | |
---|---|
仮想空白 | セットアップ() このメソッドは、_performSetupフラグがセットされると自動的に呼び出され、各フレームで呼び出すには重すぎる計算を処理する。 |
仮想空白 | 目覚め() |
ボイド | オンイネーブル() |
ボイド | 無効化() |
ボイド | オンデストロイ() |
仮想空白 | 固定更新() |
公共施設
名称 | |
---|---|
デバイスタイプ | デバイスタイプ デバイスのタイプを取得します。 |
イント | 選択デバイスID |
ウイント | デバイスID デバイスIDを取得します。 |
カーソル | カーソル デバイスに関連付けられたCursorBehaviourを取得または設定します。 |
デバイス接続状態 | 接続状態 デバイスの現在の接続状態を取得または設定します。 |
ブール | IsConnected デバイスが接続されているかどうかを取得します。 |
ブール | IsOpened デバイスが開いているかどうかを取得します。 |
ブール | 準備完了 |
保護されたプロパティ
名称 | |
---|---|
BaseCoordinateConverter | 座標変換 |
ブール | IsCursorSet カーソルが設定されているかどうかを示します。 |
パブリック属性
名称 | |
---|---|
const int | ANY_ID |
UnityEvent< DeviceBehaviour > | デバイスオープン ConnectionStateがDeviceConnectionState.Opened状態に遷移したときにトリガーされるイベント。 |
UnityEvent< DeviceBehaviour > | デバイスクローズ ConnectionStateがDeviceConnectionState.Connected状態に遷移したときにトリガーされるイベント。 |
保護された属性
名称 | |
---|---|
ストリング | オブジェクト名 |
公開イベント・ドキュメント
イベント ErrorEvent
Action< DeviceBehaviour, Ret > ErrorEvent()
イベント ConnectionStateChanged
ConnectionStateDelegate ConnectionStateChanged()
デバイスの接続状態が変化したときにトリガーされるイベント。
イベント ConnectionStateChangedAsync
Action< DeviceBehaviour, DeviceConnectionState, DeviceConnectionState > ConnectionStateChangedAsync()
デバイスの接続状態が変化した直後にトリガーされるイベント。
このイベントはメインスレッドでディスパッチされるため、UnityのシーンオブジェクトやUIエレメントとの安全なインタラクションが可能になります。デバイスの状態は別の高頻度スレッドで更新されるため、イベントを処理する時の状態は現在の状態と若干異なる可能性があることに注意してください。より正確さが必要な場合はConnectionStateChangedイベントを使用してください。
パブリック・ファンクション・ドキュメント
関数 ConnectionStateDelegate
delegate void ConnectionStateDelegate(
DeviceBehaviour device,
DeviceConnectionState state,
DeviceConnectionState prevState
)
デバイスの接続状態の変更を処理するためのデリゲート。
パラメーター
- stateデバイスの新しい状態。
- prevStateデバイスの以前の状態。
- deviceイベントを発生させるデバイス・インスタンス。
関数 SetSetupToPerform
void SetSetupToPerform()
次のフレームでセットアップを行うことを示す。
ご覧ください:セットアップ
関数 ToString
override string ToString()
オブジェクトの文字列表現を返し、オブジェクトの名前、クラスタイプ、デバイスIDを含む人間が読める説明を提供します。
戻り値現在のオブジェクトを表す文字列(名前、クラスタイプ、デバイスIDを含む)。
The returned string follows the format: "name <Class>(#id)", where:
- 「name "はオブジェクトの
_objectName
フィールドにいる。 - "Class "はオブジェクトのクラスタイプの名前である。
- 「id」はデバイスIDで、4文字の16進文字列としてフォーマットされる。
ANY_ID
.もしDeviceId
はANY_ID
の値である。SelectedDeviceId
が使われている。
このメソッドは、オブジェクトの簡潔で有益な説明を提供することで、デバッグやロギングに役立ちます。
保護された関数のドキュメント
機能 セットアップ
virtual void Setup()
このメソッドは、_performSetupフラグがセットされると自動的に呼び出され、各フレームで呼び出すには重すぎる計算を処理する。
によって再実装される:Haply::Inverse::Unity::Inverse3::セットアップ
このメソッドは、ベース・コールを保持するように注意してオーバーライドできる。SetSetupToPerformを使用してSetupコールをトリガーする。
アウェイク機能
virtual void Awake()
関数 OnEnable
void OnEnable()
関数 OnDisable
void OnDisable()
関数 OnDestroy
void OnDestroy()
関数 FixedUpdate
virtual void FixedUpdate()
によって再実装されています:Haply::Inverse::Unity::Inverse3::FixedUpdate
公共財産の文書化
プロパティ DeviceType
DeviceType DeviceType;
デバイスのタイプを取得します。
Inverse.DeviceType.Inverse3、Inverse.DeviceType.VerseGrip、またはInverse.DeviceType.Nilを指定します。
プロパティ SelectedDeviceId
int SelectedDeviceId;
プロパティ DeviceId
uint DeviceId;
デバイス ID を取得します。
プロパティ カーソル
CursorBehaviour Cursor;
デバイスに関連付けられたCursorBehaviourを取得または設定します。
プロパティ ConnectionState
DeviceConnectionState ConnectionState;
デバイスの現在の接続状態を取得または設定します。
デバイスは、DeviceConnectionState.Disconnected、DeviceConnectionState.Connected、DeviceConnectionState.Openのいずれかの状態になります。状態を変更すると、対応するイベントと状態変更通知がトリガーされます。
プロパティ IsConnected
bool IsConnected;
デバイスが接続されているかどうかを取得します。
プロパティ IsOpened
bool IsOpened;
デバイスがオープンされているかどうかを取得します。
プロパティ IsReady
bool IsReady;
保護された財産の文書化
プロパティ CoordinateConverter
BaseCoordinateConverter CoordinateConverter;
プロパティ IsCursorSet
bool IsCursorSet;
カーソルが設定されているかどうかを示す。
Unityではnullとの直接比較は高くつくことがあるため、このプロパティはカーソルの存在チェックを最適化するのに役立ちます。
公開属性のドキュメント
変数 ANY_ID
static const int ANY_ID = 0;
変数 DeviceOpened
UnityEvent< DeviceBehaviour > DeviceOpened;
ConnectionStateがDeviceConnectionState.Opened状態に遷移したときにトリガーされるイベント。
これは、DeviceIdや Inverse3.Handednessなどの必要なデータが正しく初期化され、デバイスが使用可能な状態であることを示します。DeviceTypeに応じて、第1引数として渡されたDeviceBehaviourインスタンスは、対応する型(Inverse3またはVerseGrip)にキャストすることができます。
このイベントはメインスレッドでディスパッチされるため、UnityのシーンオブジェクトやUIエレメントとの安全なインタラクションが可能になります。デバイスの状態は別の高頻度スレッドで更新されるため、イベントを処理する時の状態は現在の状態と若干異なる可能性があることに注意してください。より正確さが必要な場合はConnectionStateChangedイベントを使用してください。
変数 DeviceClosed
UnityEvent< DeviceBehaviour > DeviceClosed;
ConnectionStateがDeviceConnectionState.Connected状態に遷移したときにトリガーされるイベント。
これは、デバイスがもう使用できないことを示す。DeviceTypeに応じて、第1引数として渡されたDeviceBehaviourインスタンスを対応するタイプ、Inverse3またはVerseGripにキャストすることができます。
このイベントはメインスレッドでディスパッチされるため、UnityのシーンオブジェクトやUIエレメントとの安全なインタラクションが可能になります。デバイスの状態は別の高頻度スレッドで更新されるため、イベントを処理する時の状態は現在の状態と若干異なる可能性があることに注意してください。より正確さが必要な場合はConnectionStateChangedイベントを使用してください。
保護された属性の文書化
変数 _objectName
string _objectName;