Package ManagerにあるCinemachineとPostProcessingを追加した状態で始めます。
Cinemachine:カメラ制御が簡単にできるそうです。
PostProcessing:画面にエフェクトをかけたりできるそうです。


キャラクタ着地時に画面を揺らす
コーギーエンジンに含まれている以下、2つをインポートします。
・MM Feedbacks
・MM Tools

public変数としてMMFeedbacksを定義。
キャラクタのコライダーが地面に接する時をトリガーとして MMFeedbacksを再生します。


キャラクタにMMFeedbacksコンポーネントを追加。
インスペクタ下のほうにあるAdd new feedbackからCinemachine Impulseを選択します。


Cinemachine Impulseの設定
インスペクタにある項目:Raw Signalの右側にある歯車マークをクリックして、Presets > 6D Shakeを選択。
その下のほうにある Velocityの X,Y=2 とします。


public変数MMFeedbackにMMFeedbacksがアタッチされているオブジェクトをドロップします。(今回は自身にスクリプトをアタッチしているので、キャラクタ自身をドロップします。)

Virtual Cameraの設定
ヒエラルキー上で右クリック > Cinemachine > Virtual Cameraオブジェクトを追加します。

インスペクタ上の Add Extensionから “Chinemachine Impulse Listener” を選択します。(Virtual Cameraが画面のImpulseを検知することができるようになります。)

ジャンプをして確認。着地時に画面が揺れています。

着地時にパーティクルを発生させる
パーティクルを作成する
空のオブジェクトを作成

Particle Systemコンポーネントを追加。
以下の設定をします。
1.Looping = Off
2.Start LifeTime = 1 (演出継続時間)
3.Play On Awake = Off
4.Emissionをクリック。 Rate over Time=0, Burstsの”+”をクリック。

5.Size over LifeTimeのSizeの右にある波形から下向きの波形を選択します。

6.RendererのMaterialから好きなパーティクルを選択します。

パーティクルの発生設定
1.パーティクルをキャラクターの子のオブジェクトにして、発生させたい場所にオブジェクトの位置を調整します。


2.MMFeedbacksの Settings > Events > On Play()にパーティクルをセット。
”+”から ParticleSystem > Play()を選択し、Feedbackが呼び出されたときにこのParticleSystemを再生するようにします。


着地時にパーティクルが発生します。

コメント