閲覧いただきまして、ありがとうございます。
今回は、PaperZD 使用時の重力設定 と コリジョンの設定について備忘録として残しておこうと思い、つぶやいてみました。
UnrealEngine5 ゲーム開発はじめました。数えてシリーズ15回目の投稿になります。
重力の設定
マップレベルに、「BlockingVolume」を敷き詰めて、ブロックを通過させないようにしても、
NoCollision 設定すると通過してしまう。。。という事象にぶち当たりました。
といいますか、当たり前の挙動なのでしょうか?
「BlockingVolume」に関してのお話はこちら ↓
【UE5】タイルセットとタイルマップ (12) - aki★'s technical-Lab (akihisa-h.com)
重力が働いているから、、、というのが理由。そもそもブロックを通過しないように配置した「BloclingVolume」。。。
NoCollision設定の方が優先されるということ?
まあ、とりあえず重力を無効にしてみます。
設定するブループリントクラスを開いて、
右側 詳細で、検索「Gravity」。
▼キャラクタームーブメント(基本セッティング)
Gravity Scale デフォルトで1.0になっています。
↓
これを0に設定することで、重力が無効(浮いた形)になります。
NoCollision設定してもどこかに消えたりせずに、レベルマップ上にブループリントは残るようになりました。
コリジョンの設定
衝突したときにどうするか。。。という設定と認識しています。
敵キャラクタのブループリントをマップレベル上に配置して、
動く設定(今回はProjectileMovementを使用して、playerをターゲットとして追いかけるホーミング設定)をして、
その後テストプレイ。。。
敵キャラが思うように動いてくれない。。。
コリジョンプリセットをいろいろと設定してみる。
設定によっては、敵キャラクタが動かなくなったりします(BlockAllなど)
空間であってもコリジョンが働いているということ?
ちなみにコリジョンの設定は
ブループリントクラスを開いて、
右側 詳細 ▼コリジョンにあります。
▼Sprite、▼CapsuleComponent
それぞれで設定する必要があります。
重力設定をなしにして、NoCollisionにすると、
重力の影響を受けなくなるので、どこかに行ったりしないし、
何に衝突しても無効となる挙動をします。
敵同士がぶつかったときに重なりあってしまう。。。
当然か。。。 NoCollision設定だもん、、、ね。
今回は、重力とコリジョンの設定についてつぶいてみました。
【UE5】UnrealEngine5でゲーム開発始めました - aki★'s technical-Lab (akihisa-h.com)