本文整理汇总了C++中UStaticMeshComponent::SetCollisionEnabled方法的典型用法代码示例。如果您正苦于以下问题:C++ UStaticMeshComponent::SetCollisionEnabled方法的具体用法?C++ UStaticMeshComponent::SetCollisionEnabled怎么用?C++ UStaticMeshComponent::SetCollisionEnabled使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UStaticMeshComponent
的用法示例。
在下文中一共展示了UStaticMeshComponent::SetCollisionEnabled方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnDropMulticast_Implementation
void USCarryObjectComponent::OnDropMulticast_Implementation()
{
AActor* CarriedActor = GetCarriedActor();
if (CarriedActor)
{
/* Find the static mesh (if any) to re-enable physics simulation */
UStaticMeshComponent* MeshComp = Cast<UStaticMeshComponent>(CarriedActor->GetComponentByClass(UStaticMeshComponent::StaticClass()));
if (MeshComp)
{
MeshComp->SetCollisionEnabled(ECollisionEnabled::QueryAndPhysics);
MeshComp->SetSimulatePhysics(true);
}
CarriedActor->GetRootComponent()->DetachFromComponent(FDetachmentTransformRules::KeepWorldTransform);
}
}
示例2: OnPickupMulticast_Implementation
void USCarryObjectComponent::OnPickupMulticast_Implementation(AActor* FocusActor)
{
if (FocusActor && FocusActor->IsRootComponentMovable())
{
/* Find the static mesh (if any) to disable physics simulation while carried
Filter by objects that are physically simulated and can therefor be picked up */
UStaticMeshComponent* MeshComp = Cast<UStaticMeshComponent>(FocusActor->GetComponentByClass(UStaticMeshComponent::StaticClass()));
if (MeshComp && MeshComp->IsSimulatingPhysics())
{
MeshComp->SetCollisionEnabled(ECollisionEnabled::QueryOnly);
MeshComp->SetSimulatePhysics(false);
}
FocusActor->AttachToComponent(this, FAttachmentTransformRules::KeepWorldTransform);
}
}