ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|---|
|
FloatingPawnMovementとは
FloatingPawnMovementは、Unreal Engine 5(UE5)において、重力や物理(physics simulation)に縛られずにPawnを浮遊させながら移動させる、軽量な移動コンポーネントです。一般的な歩行キャラクターのように地面に立って移動するのではなく、空間内を自由に「浮いて動く」挙動を、最小限の設定で実現できるのが特徴です。
このコンポーネントはPawnMovementComponentを基底とする、シンプルな移動コンポーネントとして位置づけられています。速度や加速度に上限を設けながら入力に応じてPawnを動かしますが、重力は実装されていません。そのため、放っておいても落下せず、その場に留まったまま入力方向へなめらかに移動します。
ゲームエンジンにおける移動処理は、しばしば「接地」「重力」「段差登り」「衝突応答」といった複雑な要素を伴います。FloatingPawnMovementは、それらをあえて持たないことで、浮遊体の移動だけに特化したシンプルさを提供します。ドローンや空中カメラ、UFOのように地面に縛られない動きを実装したいとき、有力な選択肢になります。
何のためのコンポーネントか
UE5では、Pawn(プレイヤーやAIが操作・所有できるアクター)の移動ロジックを、移動コンポーネント(Movement Component)として分離して扱う設計が一般的です。FloatingPawnMovementは、その中でも「浮遊しながら自由に動く」挙動を担当します。
具体的には、以下のような役割を持ちます。
- 入力の蓄積と速度への変換: Add Movement Inputで与えられた移動方向を受け取り、加速度・最大速度の設定に基づいて速度ベクトルへ変換します。
- 速度・加速の制御: Max SpeedやAccelerationにより、移動の上限速度や加速の鋭さをコントロールします。
- 浮遊移動の更新: 重力を考慮せず、計算した速度に従ってPawnの位置を毎フレーム更新します。
歩行キャラクター向けの高機能なCharacterMovementComponentと比べると機能は絞られていますが、その分だけ動作が軽く、挙動も理解しやすいのが利点です。
主なプロパティ
FloatingPawnMovementの挙動は、主に次の4つのプロパティで調整します。いずれもコンポーネントを選択した状態で、詳細(Details)パネルから設定できます。
| プロパティ | 役割 | 調整の目安 |
|---|---|---|
| Max Speed | Pawnが到達できる最大の速度(速度ベクトルの大きさ)の上限。 | 値を大きくするほど速く移動できる。乗り物やドローンの「最高速度」に相当。 |
| Acceleration | 入力があるときに速度を変化させる割合(加速の鋭さ)。 | 大きいほど素早く最高速度へ達する。小さいとゆっくり加速する。 |
| Deceleration | 入力が無いときに速度を減衰させる割合(停止までの鋭さ)。 | 大きいとすぐ止まり、小さいと慣性で滑るように止まる。 |
| Turning Boost | 進行方向を変えるときに加わる追加の力。方向転換時の反応を高める。 | 大きいほど方向転換が機敏になり、ドリフト感が減る。0で追加の力を無効化。 |
これらの数値はゲームの感触に直結します。「ふわっと滑る浮遊感」を狙うならAcceleration・Decelerationを控えめに、「ピタッと止まる操作感」を狙うならそれらを大きめに、といった方向で調整するとイメージをつかみやすいでしょう。なお、各プロパティの正確な単位や既定値はバージョンや環境により異なる場合があるため、厳密な値は公式ドキュメントの確認を推奨します。
基本的な使い方
FloatingPawnMovementは、Pawnに追加して入力で動かすという流れで利用します。代表的な手順は次のとおりです。
1. Pawnを用意する
移動させたいPawnクラス(ブループリント)を用意します。FloatingPawnMovementはPawnへの追加を前提としており、Characterには通常CharacterMovementComponentが既に組み込まれているため不要です。
2. コンポーネントを追加する
PawnのコンポーネントパネルからFloatingPawnMovementを追加します。追加後、詳細パネルでMax SpeedやAccelerationなどを調整します。
3. 入力を受け取りAdd Movement Inputで動かす
キーボードやコントローラーの入力を受け取り、移動方向(ワールド方向ベクトル)を計算してAdd Movement Inputに渡します。FloatingPawnMovementがその入力を蓄積し、設定に従ってPawnを浮遊移動させます。
// 擬似コード(処理の流れのイメージ) // 入力イベント(例: 前後移動の軸入力)から呼ばれる想定 FVector Direction = GetActorForwardVector(); AddMovementInput(Direction, AxisValue); // FloatingPawnMovement が速度に変換 |
ブループリントの場合も同様に、入力イベントから方向ベクトルとスケール値を求め、Add Movement Inputノードへ接続します。FloatingPawnMovementがPawnに追加されていれば、特別な配線をせずとも移動として反映されます。
CharacterMovementComponentとの違い
UE5には、より高機能な移動コンポーネントとしてCharacterMovementComponentがあります。両者は「Pawnを動かす」点では共通しますが、想定する用途が大きく異なります。
| 観点 | FloatingPawnMovement | CharacterMovementComponent |
|---|---|---|
| 重力 | 実装されていない(落下しない) | あり(重力で落下する) |
| 接地・段差登り | 持たない(浮遊前提) | 歩行・落下・ジャンプなどの状態を持つ |
| 対象アクター | Pawn全般 | 主にCharacterクラス |
| 機能の規模 | 軽量・シンプル | 高機能・多機能で複雑 |
| 主な用途 | ドローン・空中カメラ・UFOなどの浮遊体 | 人型・地上歩行キャラクター |
ざっくり言えば、「地面を歩くキャラクター」ならCharacterMovementComponent、「空間を浮いて動く乗り物・カメラ」ならFloatingPawnMovementと覚えると選びやすくなります。重力や接地が不要で、シンプルに移動だけ実装したい場面ほどFloatingPawnMovementが活きます。
典型的な用途
- ドローン・飛行体: 空中を自由に移動する操作対象。重力に引かれず一定高度を保ちやすい。
- 空中カメラ・観察用カメラ: レベルを俯瞰・移動するフリーカメラ的なPawn。なめらかな加減速で見やすい移動を作れる。
- UFO・浮遊オブジェクト: 地面に縛られず浮遊する乗り物や敵。
- デバッグ・スペクテイター移動: レベル内を素早く飛び回って確認したい場面。
いずれも「重力や接地は要らないが、加速・最大速度の制御はしたい」というニーズに合致します。
使う際の落とし穴・注意点
| 注意点 | 内容 |
|---|---|
| 接地・重力が無い | 床に着地する・段差を登るといった処理は提供されません。地面歩行が必要なら別の手段が必要です。 |
| 衝突応答は別途検討 | 壁にめり込まない/滑るといった衝突挙動は、コンポーネント単体に過度な期待をせず、コリジョン設定やプロジェクト要件に応じて確認・設計する必要があります。 |
| Pawn前提 | Pawnへの追加を想定しています。Characterには通常CharacterMovementComponentが既にあるため、重ねて追加する設計は基本的に不要です。 |
| 高度な移動には不向き | 複雑な物理挙動や歩行アニメーション連携が必要なら、CharacterMovementComponentやPhysics系の手段を検討します。 |
これらは「機能が不足している」というより、浮遊移動に特化するために意図的に機能を絞っていると理解するのが適切です。要件に対して機能が足りない場合は、無理に拡張せず別のコンポーネントを選ぶ判断も重要です。
よくある質問(FAQ)
Q1. FloatingPawnMovementは重力で落下しますか?
いいえ。重力は実装されていないため、入力が無ければその場に留まり、落下しません。落下挙動が必要な場合は、重力を扱うCharacterMovementComponentなど別の手段を検討してください。
Q2. Characterに追加して使うべきですか?
基本的には不要です。Characterクラスには通常CharacterMovementComponentが組み込まれており、地上歩行に必要な機能を備えています。FloatingPawnMovementは、重力や接地を必要としないPawnの浮遊移動に向いています。
Q3. 移動が「滑りすぎる/止まらない」と感じるときは?
DecelerationやTurning Boostの値を見直すと改善しやすいです。Decelerationを大きくすると入力を離したときに早く止まり、Turning Boostを上げると方向転換時の反応が機敏になります。狙う操作感に合わせて調整してください。なお、各プロパティの厳密な挙動・単位はバージョンによる差異もあり得るため、最終的な確認は公式ドキュメントを参照することを推奨します。
まとめ
FloatingPawnMovementは、重力や物理に縛られずにPawnを浮遊移動させる軽量な移動コンポーネントです。Max Speed・Acceleration・Deceleration・Turning Boostという4つのプロパティで挙動を調整でき、Pawnに追加してAdd Movement Inputで動かすだけというシンプルな使い勝手が魅力です。重力・接地を前提とするCharacterMovementComponentとは役割が異なり、ドローンや空中カメラ、UFOなどの浮遊体に適しています。特性と限界を理解したうえで、用途に合った移動コンポーネントを選んでいきましょう。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
- Event BeginPlay
- Event ActorBeginOverlap
- Event Tick
- on component begin overlap
- On Component Hit
- CameraBoom(Spring Arm)
- Get Player Character
- Nav Mesh Bounds Volume
- AI MoveTo
- Pawn
- Create Render Target 2D
- Take High Res Screenshotノード
- Sphere Reflection Capture
- Event Tickノード
- ウィジェットのキャンバスパネル
- DefaultSceneRoot
- FloatingPawnMovement
- Set World Rotation
- Event Any Damage
- Set World Rotation
- VInterp To
- Get Socket Transform
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?