繁体   English   中英

虚幻引擎 C++ 中对象的球体跟踪

[英]Sphere Trace For Objects in Unreal Engine C++

我在项目设置/碰撞中添加了一个名为 Point 的新 object 通道。 项目设置/碰撞

我想为 C++ 中的对象制作 Spehere Trace Single。 基本上,我想在 C++ 中执行此操作。 蓝图代码(有效)

我搜索了一段时间,我在 DefaultEngine.ini 中找到了这个: DefaultEngine.ini (Ln58)

这没有用。 Trace 找不到 object。 命中值为假:

    TArray<TEnumAsByte<EObjectTypeQuery>> ObjectTypesArray;
    ObjectTypesArray.Reserve(1);
    ObjectTypesArray.Emplace(ECollisionChannel::ECC_GameTraceChannel1);

    bool hit = UKismetSystemLibrary::SphereTraceSingleForObjects(GetWorld(), StartLocation, EndLocation, 500.f, ObjectTypesArray, false,
        IgnoredActors, EDrawDebugTrace::ForDuration, OutHit, true);

这会导致智能感知错误:(没有重载 function 的实例与参数列表匹配)

ObjectTypesArray.Add(ECollisionChannel::ECC_GameTraceChannel1);

我应该怎么办? 如何将我自己的 object 通道添加到我的 TArray? 提前非常感谢。

您需要添加到数组的值是

UEngineTypes::ConvertToTraceType(ECollisionChannel::ECC_GameTraceChannel1)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM