めちゃくちゃお久しぶりです。
今回はC++でSkeletalMeshのSimulation Generates Hit Eventsを変える方法を書いていくよ。
“SetNotifyRigidBodyCollision”では変えられない
まず、この記事を書く前に色々と調べて試したんだけど、Actorなどでは動くらしい
“SetNotifyRigidBodyCollision”が何故かSkeletalMeshではいじってあげてもエディタ上でSimulation Generates Hit EventsがTrueにならない…
BaseClass.h
TObjectPtr<class USkeletalMeshComponent> SkeletalMeshComponent;
BaseClass.cpp
SkeletalMeshComponent->SetNotifyRigidBodyCollision(true);
解決策
どうやって解決したかというと
"SkeletalMeshComponent->BodyInstance.SetInstanceNotifyRBCollision()"をすることで解決
BaseClass.cpp
SkeletalMeshComponent->BodyInstance.SetInstanceNotifyRBCollision(true);
これは“SetNotifyRigidBodyCollision()”の中身なんだけど、その中で実行されている”SetInstanceNotifyRBCollision()”を直接実行してあげただけだよ
これをすることで、デフォルトでSkeletalMeshにSimulation Generates Hit Eventsのチェックをつけることができるよ!
もしも困っている人がいたら参考にしてみてね。
そして今年はもっと多くQiita書くのようにしたいなという目標を立てておく