初心者から画像制作 -3D Graphic Design from Beginner-

3D画像制作を独学で1から勉強。

Unreal Engine 4 で物を押すアニメーションを作る。【Unreal Engine #142】

はじめに

BlenderとUnreal Engine 4の勉強を再開しています。
今回の目標は11月までに3Dで動かせるキレイなモバイル向けゲームを作ることです。
 

前回まで


前回は近づくと自動で開くドアを作ってみました。
 


今回の作業


今回は物を押す動きを作ってみたいと思います。
まずアクターのブループリントを作成します。
 

スタティックメッシュを配置して、
PhysicsConstraintを中心に追加しました。
 

右側のタブでComponent Nameをスタティックメッシュと同じにします。
すると、メッシュが赤枠で囲まれるようになりました。
 

さらに、Linear LimitsのXY軸方向をFree、Angular LimitsをLockedにします。
これで平面にのみスライドして動くようになりました。
 

スタティックメッシュの詳細タブからLinear Dampingの数値を上げました。
この数値を調整して滑りやすさを変えることができます。
 

X軸方向、Y軸方向にそれぞれボックスコリジョンを作成します。
※このコリジョンに触れたら押すように設定していきます。
 

キャラクターBPの変数にIsPushingというブーリアンを作成しました。
※変数をいろいろ作りすぎてややこしくなってきています。
 

ボックスコリジョンに触れたら、物理シミュレーションを開始して、IsPushingがonになるように
ボックスコリジョンから離れたら、物理シミュレーションを終了して、IsPushingがoffになるようにしています。
 

アニメーションブループリントにもIsPushingの変数を作成して、
キャラクターブループリントのIsPushingと連動するようにしました。
 

ステートマシーンを作成していきます。
 

コリジョンに触れたら押す状態になって、
スピードが上がったら押すアニメーションが再生されるように条件付けします。
 

ここまで


これで物を押すアニメーションができました。
コリジョンから離れるとスタティックメッシュに戻るので、足場としても使うことができます。
今日はここまでにします。次回も続きを作っていきたいと思います。
(今回の作業時間:180分)
 
<前の記事