【求教】为什么我的碰撞函数一直不触发啊!
我明明都写对的呀!!!为什么不触发事件!!!!逼疯了要!!!求教
求教!
置顶一下 hit事件就没打开吧,g 本帖最后由 mknmknmk 于 2018-9-16 19:26 编辑
检查是否有碰撞体 ,碰撞预设里 2者均勾选生成碰撞事件并且 碰撞方和被碰撞方相互均是block。 一般是碰撞通道设置问题 wxiaop 发表于 2018-9-14 11:24
hit事件就没打开吧,g
hit开关开了,蓝图里面的碰撞事件能检测到,但是代码编辑的碰撞事件检测不到 mknmknmk 发表于 2018-9-16 19:24
检查是否有碰撞体 ,碰撞预设里 2者均勾选生成碰撞事件并且 碰撞方和被碰撞方相互均是block。 ...
两个碰撞体都是block,并且蓝图里面的碰撞事件能检测到,但是代码编辑的碰撞事件检测不到 剑客 发表于 2018-9-17 09:37
一般是碰撞通道设置问题
两个都是block,蓝图里面的事件都能检测到的。 做个蓝图继承自那个c++ actor, 检查碰撞预设,模型碰撞体, 如果不是block 则需代码设置 本帖最后由 mknmknmk 于 2018-9-17 18:22 编辑
YourActor->SetActorEnableCollision(true);
CollisionComp->BodyInstance.SetCollisionProfileName("Projectile");overlaySphereComponent->SetCollisionProfileName("BlockAll");
或者
InstancedStaticMeshComponent->BodyInstance.SetCollisionEnabled(ECollisionEnabled::QueryOnly);
InstancedStaticMeshComponent->BodyInstance.SetObjectType(ECC_WorldDynamic);
InstancedStaticMeshComponent->BodyInstance.SetResponseToAllChannels(ECR_Ignore);
InstancedStaticMeshComponent->BodyInstance.SetResponseToChannel(ECC_WorldStatic, ECR_Block);
InstancedStaticMeshComponent->BodyInstance.SetResponseToChannel(ECC_WorldDynamic, ECR_Block);
页:
[1]
2