執筆バージョン: Unreal Engine 4.26
|
第15回ぷちコンのテーマが「かわる」とのことで、初心者記事として2つのオブジェクトを入れ替える方法を紹介したいと思います!
ThirdPersonテンプレートで解説していきます。
入れ替えたい2つのアクターを配置する
![](https://historia.co.jp/wp/wp-content/uploads/2021/02/01-1024x701.png)
まずは入れ替えたいふたつのアクターを配置します。
StaticMeshActorは配置した直後は、移動できない「Static」の設定になっているので、以下のように「Movable」に変更します。
![](https://historia.co.jp/wp/wp-content/uploads/2021/02/02-1024x393.png)
LevelBlueprintを開き、キーを押したときにイベントを発生させる
LevelBlueprintで以下のように設定し、キーを押したときのイベントを取得します。
“「X」を押したとき”のイベントは、Blueprint上で「keyboard x」と打つと候補に出てきます。
実行してみて、「Hello」と出ることを確認しましょう。
![](https://historia.co.jp/wp/wp-content/uploads/2021/02/03-1024x471.png)
2つのアクターの参照を取る
このあとBlueprintで2つのアクターの位置を入れ替えたいので、それぞれのアクターの参照を配置しましょう。
レベルエディタ上で選択した状態で、Blueprint側で右クリックを行い、参照を配置します。
![](https://historia.co.jp/wp/wp-content/uploads/2021/02/04-1024x318.png)
↓こうなったらOK
![](https://historia.co.jp/wp/wp-content/uploads/2021/02/05.png)
入れ替える処理を書く
Blueprintを以下のように書いて、入れ替える処理を書きましょう。
変数を1つ追加しているので注意です。
![](https://historia.co.jp/wp/wp-content/uploads/2021/02/06-1024x490.png)
2つのアクターを入れ替えるときは、1つ目を移動した時点で1つ目の位置情報を失ってしまうため、一度変数に保存する必要があります。
実行してXを押すと、イスとテーブルの位置が入れ替わりました!(地味ですね……)
![](https://historia.co.jp/wp/wp-content/uploads/2021/02/07-300x245.png)
応用編:当たったらキャラクターの位置を変える
「[UE4] コンポーネントを使ってワープさせてみる」で紹介されている”キャラクターが当たったら”という部分と合わせると、何かに当たったらキャラクターの位置を何かと入れ替えることができます。
ぜひ試してみてくださいね!