ショットガン!~散弾処理作成方法!~

使用してる物

・TPSテンプレート

・アニメーションスターターパック

・銃のアセット

 

※すでに銃をアタッチさせていて、ショットガンのアニメーションが出来ているという前提で説明する。

 

~プレイヤーBP~

・自身のAnimBP参照

プレイヤーのAnimBPをキャストして参照し、変数に格納。

f:id:Free_Gamer:20180710215435p:plain

・ショットガン処理

f:id:Free_Gamer:20180710215559p:plain

ボタン押した時、1回だけ射撃アニメーションを再生する。ShootEndカスタムイベントが呼び出されると、DoOnceのResetに処理が流れ、もう一度撃つことが可能。

連打してアニメーションが忙しなくならないようにする為にこうしてる。

f:id:Free_Gamer:20180710215637p:plain

・射撃モンタージュ

f:id:Free_Gamer:20180710220004p:plain

Notify通知

ShootEnd・・・射撃が終了した時に呼び出される通知

・AnimBP

プレイヤー情報を参照。

f:id:Free_Gamer:20180710220254p:plain

ShootEnd通知が来た時、プレイヤーBPの「ShootEnd」カスタムイベントを呼び出す。

f:id:Free_Gamer:20180710220207p:plain

 

ショットガンによる散弾処理はライントレースで行ってる。

ForLoopで何発弾を出すか定義する。

11発散弾させたければ、

 

FirstIndexに「0」

LastIndexに「10」

 

を入れればいい。

カメラから5000の距離までトレースを飛ばす。

トレースを飛ばす際、赤枠で囲った部分で散弾範囲を定義する。

f:id:Free_Gamer:20180710221051p:plain

Min・・・最小値

Max・・・最大値

f:id:Free_Gamer:20180710220950p:plain

今回は、

Min・・・‐200

Max・・・200

を入れている。

つまり、撃った時・・・

 

ワールド座標のXYZの方向に、-200~200の範囲で散弾する。

 

という事になる。

f:id:Free_Gamer:20180710221537p:plain

トレースが何かにヒットした場合、ヒットした場所(ImpactPoint)にエフェクトを出す。

何もヒットしなかったら、トレースの終端距離(TraceEnd)にエフェクトを出す。

という処理だ。

f:id:Free_Gamer:20180710221949p:plain

 

やってみよう!

youtu.be

 

見事にショットガンの如く散弾処理が行われていた!

ショットガンはかっこいいよねぇ~><///

ゼロ距離で顔面撃った時はもう最高にエクスタs

 

それではまた!^^ノシ