Orbital Transposer
Virtual Camera (バーチャルカメラ) の Body の Orbital Transposer アルゴリズムは、バーチャルカメラの Follow ターゲットから可変の距離で Unity のカメラを移動させます。オプションで プレイヤーの入力 を受け取ることも可能です。これにより、ターゲットに対するカメラの位置をプレイヤーが動的に制御できるようになります。
Orbital Transposer は、Heading (進行方向) という概念を取り入れています。これは、ターゲットが移動する、あるいは正面を向ける方向のことです。Orbital Transposer は、ターゲットの進行方向と同じ方向を向くようにカメラを配置します。デフォルトではこの位置はターゲットの真後ろになっています。Heading Bias プロパティーを調整することで、この関係を制御できます。
Orbital Transposer に入力制御をアタッチすれば、プレイヤーもカメラを制御できるようになります。これによりプレイヤーは、カメラをターゲット周囲の軌道上のどこにでも動かせるようになります。Input Manager で設定した任意の軸から入力を受け取るように、Orbital Transposer の設定を調整してください。あるいは、カスタムの入力システムを使用して値を直接制御することも可能です。
Orbital Transposer には、自動でカメラの再センタリングを実行するオプションがあります。Recenter To Target Heading にチェックマークを入れると、Orbital Transposer がカメラをターゲットの進行方向に戻します。ユーザー入力が一切検知されなくなってからの待機時間の長さと、再センタリングの速さを設定できます。
プロパティー
プロパティー | 機能 | |
---|---|---|
Binding Mode | Follow ターゲットからのバーチャルカメラのオフセットの解釈に使用する座標空間です。 | |
Lock To Target On Assign | バーチャルカメラが有効にされた時点、あるいはターゲットが指定された時点の、ターゲットのローカルフレームを使用します。 | |
Lock To Target With World Up | ターゲットのローカルフレームを、傾きと回転が 0 にリセットされた状態で使用します。 | |
Lock To Target No Roll | ターゲットのローカルフレームを、回転が 0 に設定された状態で使用します。 | |
Lock To Target | ターゲットのローカルフレームを使用します。 | |
World Space | ワールド空間のオフセットです。 | |
Simple Follow With World Up | ターゲットを基準にし、カメラのローカル軸を使用します。 | |
Follow Offset | Follow ターゲットとバーチャルカメラとの間に維持される、位置オフセットです。 | |
X Damping | カメラがどれだけすばやく X 軸のオフセットを維持しようと反応するか。値が小さいほどカメラの反応が素早くなり、値が大きいほど反応が遅くなります。軸ごとに異なる設定を使用することで多様なカメラ動作を作り出せます。Binding Mode が Simple Follow With World Up に設定されている時には使用できません。 | |
Y Damping | カメラがどれだけすばやく Y 軸のオフセットを維持しようと反応するか。値が小さいほどカメラの反応が素早くなり、値が大きいほど反応が遅くなります。 | |
Z Damping | カメラがどれだけすばやく Z 軸のオフセットを維持しようと反応するか。値が小さいほどカメラの反応が素早くなり、値が大きいほど反応が遅くなります。 | |
Yaw Damping | カメラがターゲットの回転の Y 角をどれだけすばやく追跡するか。値が小さいほどカメラの反応が素早くなり、値が大きいほど反応が遅くなります。Binding Mode が Lock to Target With World Up、Lock to Target No Roll、Lock to Target のいずれかに設定されている場合に利用可能です。 | |
Pitch Damping | カメラがターゲットの回転の X 角をどれだけすばやく追跡するか。値が小さいほどカメラの反応が素早くなり、値が大きいほど反応が遅くなります。 Binding Mode が Lock to Target No Roll か Lock to Target に設定されている場合に利用可能です。 | |
Roll Damping | カメラがターゲットの回転の Z 角をどれだけすばやく追跡するか。値が小さいほどカメラの反応が素早くなり、値が大きいほど反応が遅くなります。Binding Mode が Lock to Target に設定されている場合に利用可能です。 | |
Heading | Follow ターゲットの進行方向の計算方法の設定です。 | |
Definition | 進行方向を、前回の更新と現在のフレームとの差異に基づいて計算する場合は Position Delta を選択してください。ターゲットの Rigidbody を使用する場合は Velocity を選択します。ターゲットが Rigidbody コンポーネントを持っていない場合は、Position Delta に切り替えてください。ターゲットのローカルの Forward 軸を進行方向として使用する場合は Target Forward を選択してください。定数のワールド空間の Forward を進行方向として使用する場合は World Forward を選択してください。 | |
Velocity Filter Strength | Definition に Position Delta または Velocity を使用している場合に、Velocity のスムージングを制御します | |
Bias | カメラを軌道上に配置する際の、進行方向を基準にした角度オフセットです。計測単位は度 (°) です。軸の値が 0 の場合、カメラがここに配置されます。 | |
Recenter To Target Heading | プレイヤーからの入力がない場合の自動再センタリングの制御です。 | |
Enabled | 自動再センタリングを有効にしたい場合は、チェックを入れます。 | |
Wait Time | 該当軸にユーザー入力が検知されなくなった場合に、カメラが再センタリングを実行するまでの待機時間 (単位: 秒)。 | |
Recentering Time | 再センタリングの角速度の最大値です。この値から加速し、この値まで減速します。 | |
X Axis | Heading (進行方向) の制御です。この設定が、プレイヤーの入力に対するカメラの動作を制御します。 | |
Value | この軸の現在の値 (単位: 度) です。 | |
Min Value | この軸の最小値です。 | |
Max Value | この軸の最大値です。 | |
Wrap | これを有効にすると、軸が Min Value と Max Value の周囲を輪状に囲みます。 | |
Max Speed | この軸の最高速度 (度/秒)、または Speed Mode が InputValueGain に設定されている場合の入力値の乗数。 | |
Speed Mode | 軸が入力にどのように応答するか。 MaxSpeed (デフォルト) は入力に関係なく、軸が変化できる最高速度を固定します。 Input Value Gain は、入力値に MaxSpeed を乗算します。 | |
Accel Time | 与えられた軸の最大値で、Max Speed まで加速するのに掛かる時間 (単位: 秒)。 | |
Decel Time | 与えられた軸がニュートラル値の場合に、軸が 0 まで減速するのに掛かる時間 (単位: 秒)。 | |
Input Axis Name | Unity の Input manager に設定された、該当軸の名前です。該当軸の自動更新を無効にしたい場合は空の文字列に設定してください。 | |
Input Axis Value | 入力軸の値です。値が 0 の場合、入力が無いことを意味します。カスタムの入力システムから直接操作するか、Input Axis Name を設定して Input manager によって値を操作させることができます。 | |
Invert | 入力軸の Raw 値を使用前に反転させたい場合はこれを有効にしてください。 |