LoginSignup
2
1

Unity Feelを使ってみる

Posted at

Feelとはなんぞや

コードを書かなくても演出や動きをオブジェクトにつけることが出来るAsset

基本

ものを動かしてみる。

image.png
動かしたいものにMMFPLAYERをアタッチ。
Add new feedbackからTranceform>Positionを選択
image.png
Positionをひらくとどれを動かすのかおしえてと出ているので動かしたいものをドラック&ドロップ
image.png
あとはどう動かすかの設定で、とりあえず変化させてみる
image.png
シーンを再生して、Playを押してみると動く。
image.png
これが理解できればPositionのパラメータで好きな変化をつけることができるし、Add new Feedbackで様々な種類のエフェクトをつけることができる。
パーティクルや、サウンド、ループなどノーコードで使いできる。
image.png

スクリプトで制御する。

ゲームでエフェクトは何らかのトリガーで発生することが多い。その処理をスクリプトでおこなう。

       [SerializeField] private MMFeedbacks test1;
        public void FeedBackTest()
        {
            test1?.PlayFeedbacks();
        }

MMFeedbacks型の変数を用意し.PlayFeedbacks();で実行する。

image.png
変数には実行したいMMFPlayerを設定する。
.PlayFeedbacks()でさっきのPlayと同じことなのでこれ条件文で囲えばスクリプトで制御できる。

発展

カメラをゆらす

image.png
通常のカメラに親のオブジェクトをつくる。
そのオブジェクトに
image.png

MMWiggle、MMCameraShakerをアタッチする。

image.png

WigglePermittedのチェックをはずす。
WiggleTypeNoiseに設定
カメラとは別のゆらしたいオブジェクトにMMFPlayerを設定。
image.png
CameraShakeを追加

これで揺れるようになる。

Cinemachineカメラでの設定方法

image.png
メニューから2Dカメラを選択
image.png
VirtualCameraのAdd ExtensionよりImpulseListenerを追加する。
image.png

別のGameObjectにMMFPlayerを設定
FeedBackにCinemachine ImpulseSouceを追加(Sourceがついているほう)
スクリプトのCinemachine ImpulseSouceをAddComponentで追加。
追加したObjectをドラック&ドロップでInpulseSouceに設定
image.png
画面ではFeelTestが設定されている。

プレイで画面揺れるようになる。

エラー文の対処

MMFPlayerを使うのがおすすめだよ警告

image.png

下のConver to MMF_Playerを押す
image.png

Tips

Camera Shake とChinemachine Impulseは同時に使用できない。

CameraShakeを使用する時はChinemachineBraneが無効になっている必要がある。
image.png

参考サイト

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1