五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

【UE5C++】實(shí)現(xiàn)球形碰撞檢測(cè)的兩種個(gè)函數(shù):SweepMultiByObjectType和SphereTraceMult

2023-03-27 16:56 作者:一只箱君  | 我要投稿

UKismetSystemLibrary::SphereTraceMultiForObjects函數(shù)

(官方藍(lán)圖里面使用的就是這個(gè)函數(shù),推薦使用)

float SeekRadius = 100.0f;

TArray<FHitResult> HitResults2;

FVector BeginLocation = FollowCamera->GetComponentLocation();////起點(diǎn)位置

FVector EndLocation = BeginLocation + FollowCamera->GetForwardVector() * 1000;//終點(diǎn)位置


TArray<TEnumAsByte<EObjectTypeQuery>> ObjectTypes;

ObjectTypes.Add(EObjectTypeQuery::ObjectTypeQuery2);//Pawn

TArray<AActor* > IgnoreActors;

//參數(shù)列表場(chǎng)景可查看同名藍(lán)圖節(jié)點(diǎn)

bool bIsHit = UKismetSystemLibrary::SphereTraceMultiForObjects(GetWorld(), BeginLocation, EndLocation, SeekRadius, ObjectTypes, true, IgnoreActors, EDrawDebugTrace::ForDuration, HitResults2, true);

if (bIsHit)

{

for (FHitResult HitResult : HitResults2)

{

if (HitResult.GetActor() != NULL)

{

//對(duì)Actor們做的事情

}

}

}


SweepMultiByObjectType函數(shù)

TArray<FHitResult> HitResults;//檢測(cè)結(jié)果合集


FVector LineStart = FollowCamera->GetComponentLocation();;//起點(diǎn)位置

FVector LineEnd = LineStart + FollowCamera->GetForwardVector() * 3000;//終點(diǎn)位置


FCollisionObjectQueryParams ObjectQueryParams;//碰撞對(duì)象查詢參數(shù)

ObjectQueryParams.AddObjectTypesToQuery(ECC_Pawn); //添加檢測(cè)對(duì)象


FCollisionShape Shape;//碰撞檢測(cè)的形狀,可以是盒子,圓柱體或者球體

Shape.MakeSphere(150.0f);

Shape.SetSphere(150.0f);//設(shè)置大小


FCollisionQueryParams Params;//碰撞對(duì)象查詢參數(shù)

Params.AddIgnoredActor(this);//忽略自身

DrawDebugLine(GetWorld(), LineStart, LineEnd, FColor::Red, false, 2.0f, 0.0f, 2.0f);


//這個(gè)函數(shù)當(dāng)遇到第一個(gè)碰撞的物體的時(shí)候就會(huì)停下,然后收集所有的重疊部分

//第四個(gè)參數(shù)是球體的旋轉(zhuǎn),但是查詢中的旋轉(zhuǎn)沒有意義所以設(shè)置為空旋轉(zhuǎn)

if (GetWorld()->SweepMultiByObjectType(HitResults, LineStart, LineEnd, FQuat::Identity, ObjectQueryParams, Shape, Params))

{

for (FHitResult Hit : HitResults)//創(chuàng)建單個(gè)碰撞結(jié)果集,對(duì)多對(duì)象碰撞結(jié)果集合進(jìn)行遍歷

{

AActor* HitActor = Hit.GetActor();


if (HitActor)

{

//對(duì)Actor們做的事情

UKismetSystemLibrary::PrintString(this, TEXT("Hit Succeed,HitActorName is :") + HitActor->GetName());

}

}

}



【UE5C++】實(shí)現(xiàn)球形碰撞檢測(cè)的兩種個(gè)函數(shù):SweepMultiByObjectType和SphereTraceMult的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
和龙市| 平凉市| 扶沟县| 资源县| 峡江县| 吴忠市| 周口市| 团风县| 彭阳县| 嵩明县| 镇江市| 蒙阴县| 夏津县| 阿坝县| 永川市| 尼木县| 苍梧县| 南开区| 敦煌市| 北票市| 景洪市| 都昌县| 澜沧| 揭阳市| 涪陵区| 彭泽县| 钦州市| 扶风县| 宁德市| 昌都县| 涡阳县| 八宿县| 合作市| 镇宁| 玉山县| 岑巩县| 清苑县| 铜鼓县| 聂荣县| 江安县| 竹北市|