本文整理汇总了C++中USkeletalMeshComponent::IsTemplate方法的典型用法代码示例。如果您正苦于以下问题:C++ USkeletalMeshComponent::IsTemplate方法的具体用法?C++ USkeletalMeshComponent::IsTemplate怎么用?C++ USkeletalMeshComponent::IsTemplate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类USkeletalMeshComponent
的用法示例。
在下文中一共展示了USkeletalMeshComponent::IsTemplate方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ClearAllAnimSetLinkupCaches
void UAnimSet::ClearAllAnimSetLinkupCaches()
{
double Start = FPlatformTime::Seconds();
TArray<UAnimSet*> AnimSets;
TArray<USkeletalMeshComponent*> SkelComps;
// Find all AnimSets and SkeletalMeshComponents (just do one iterator)
for(TObjectIterator<UObject> It;It;++It)
{
UAnimSet* AnimSet = Cast<UAnimSet>(*It);
if(AnimSet && !AnimSet->IsPendingKill() && !AnimSet->IsTemplate())
{
AnimSets.Add(AnimSet);
}
USkeletalMeshComponent* SkelComp = Cast<USkeletalMeshComponent>(*It);
if(SkelComp && !SkelComp->IsPendingKill() && !SkelComp->IsTemplate())
{
SkelComps.Add(SkelComp);
}
}
// For all AnimSets, empty their linkup cache
for(int32 i=0; i<AnimSets.Num(); i++)
{
AnimSets[i]->LinkupCache.Empty();
AnimSets[i]->SkelMesh2LinkupCache.Empty();
}
UE_LOG(LogAnimation, Log, TEXT("ClearAllAnimSetLinkupCaches - Took %3.2fms"), (FPlatformTime::Seconds() - Start)*1000.f);
}
示例2: ResetAnimSet
void UAnimSet::ResetAnimSet()
{
#if WITH_EDITORONLY_DATA
// Make sure we handle AnimSequence references properly before emptying the array.
for(int32 i=0; i<Sequences.Num(); i++)
{
UAnimSequence* AnimSeq = Sequences[i];
if( AnimSeq )
{
AnimSeq->RecycleAnimSequence();
}
}
Sequences.Empty();
TrackBoneNames.Empty();
LinkupCache.Empty();
SkelMesh2LinkupCache.Empty();
// We need to re-init any skeleltal mesh components now, because they might still have references to linkups in this set.
for(TObjectIterator<USkeletalMeshComponent> It;It;++It)
{
USkeletalMeshComponent* SkelComp = *It;
if(!SkelComp->IsPendingKill() && !SkelComp->IsTemplate())
{
SkelComp->InitAnim(true);
}
}
#endif // WITH_EDITORONLY_DATA
}