在UE4中绘制而不是调试线
Draw not debug lines in UE4
虚幻引擎4的真正新内容。我的主要观点是绘制透明的 3d 对象,并带有由线条制成的精美边框。对于这些,我有一组构成线条的点。所以我有一个用于在 C++ 对象中创建的程序网格,但它只能绘制多边形。
在UE4中搜索有关线条绘制的信息后,尝试使用"绘制"调试行",但它仅用于调试,仅用于 2 个点(我需要绘制点数组(
所以 - 我的问题是:在UE4的C ++代码中画线。
如何绘制不调试线?
如果你有一个包含所有链接点的数组,为什么不遍历这个数组并为每个"链接点"创建一个调试线呢?
TArray<FVector> myArray = .... ;
for (size_t i = 0; i < myArray.Num() - 1; ++i)
{
FVector LinkStart = myArray[i];
FVector LinkEnd = myArray[i+1];
DrawDebugLine(GetWorld(), LinkStart, LinkEnd,
FColor(255,0,0), false, -1, 0, 10 );
}
如果你真的不想要调试线,还有另一种方法可以从FPrimitiveDrawInterface
类的场景管理中绘制线。(我从未使用过它,不确定它是解决您问题的更好解决方案(
更难的是,您可以在C++中使用网格的程序生成,在其中创建网格并填充顶点和边。看看文档,你也许能够根据你的情况调整代码
对于那些正在挣扎的人(像我一样,曾经(:
- ULineBatchComponent::D rawLine - 如果你想在世界空间中绘制 (https://docs.unrealengine.com/4.27/en-US/API/Runtime/Engine/Components/ULineBatchComponent/DrawLine/(
- AHUD::D rawLine - 如果您需要在屏幕空间上绘制 (https://docs.unrealengine.com/4.27/en-US/API/Runtime/Engine/GameFramework/AHUD/DrawLine/(
相关文章:
- 当回溯以零开始时,如何调试崩溃
- 在linux上调试巨大的C++项目
- 为什么使用__LINE_的代码在发布模式下在MSVC下编译,而不是在调试模式下
- 如何针对特定情况调试和修复此双自由内存损坏问题
- 正在VS调试器中监视映射条目
- 使用调试/崩溃报告将应用程序部署到客户端
- UE4-如何在给定4个屏幕坐标的情况下缩放纹理或材质
- 无法在UE4中包含BP类到CPP类
- VC++本机单元测试,找不到调试符号
- 如何在C++生成器中禁用"使用调试.dcus"
- UE4在OnComponentBeginOverlap上铸造其他actor
- 使用vscode调试时,GDB意外退出
- UE4 C++ 我无法将 JSON 嵌套值获取到 TArray
- 即使使用调试编译标志,表达式也是"optimized out"
- 调试 CUDA MMU 故障
- 小字符串优化(调试与发布模式)
- 在UE4中使用未定义类型'UTextBlock'
- 调试和自由执行中的信号处理
- 调试编译的服务器在数据库打开时崩溃
- 在UE4中绘制而不是调试线