システム / Interaction
Interaction System
キャラクターに 1 つ、ワールド内の対象に 1 つコンポーネントを追加するだけ。プレイヤーは対象を見てキーの役割を確認し、タップまたはホールドで使用します。
動作を見る
ショーケースシーンでの 50 秒:プロンプト、ロックされたチェスト、鍵、ホールドでの採取。音声はありません。
中庭はショーケースであり、同梱されません。製品には専用のデモマップが付属します。
できること
注視検出
キャラクターの目の位置から小さな球を毎秒 20 回スイープします。到達距離、半径、頻度は設定できます。一人称と三人称、任意のポーンに対応します。
プレイヤーのキーを読むプロンプト
キー、動詞、対象の名前("E · Open · Wooden Door")。キーは入力マッピングから取得するため、割り当てを変更するとプロンプトも更新されます。
タップとホールド
ホールドでは進行リングを表示し、キーを離すかプレイヤーが目をそらすとキャンセルされます。
ロック中の対象は理由を表示
プロンプトがグレーアウトし、"Locked. You need the Iron Key." のように理由を表示します。見ている間にロックを解除すると、プロンプトはすぐに更新されます。
基底クラス不要
コンポーネントを使うか、任意のアクターにインターフェースを実装します。インタラクト時、フォーカス時、フォーカス解除時の所有者イベントがあります。
単体で動作
Demo フォルダーと Art フォルダーを削除しても、システムはコンパイルでき、動作します。クリーンなプロジェクトでテスト済みです。
クイックスタート
キャラクターにインタラクターを追加
キャラクターに AC_Interactor を追加し、Interact アクションから Start Interact と Stop Interact を呼び出します。
インタラクト可能にする
アクターに AC_Interactable を追加して Prompt と Verb を入力し、BPI_InteractableOwner を追加して On Interacted を実装します。
プロンプトを表示
WBP_InteractionPrompt を作成し、インタラクターと入力アセットを渡して、ビューポートに追加します。
できないこと
- マルチプレイヤー:何もレプリケートされません。
- UE 5.4〜5.7 はまだテストしていません。
- 注視のみ:近接モードや見下ろし型モードはなく、重なった対象間の優先度もありません。
- キーボードとマウスのグリフのみ。ゲームパッドは同梱されておらず、テストもしていません。
スクリーンショットの中庭シーンはショーケースであり、同梱されません。製品には専用のデモマップが付属します。