首先进入具体放置类蓝图中添加4个组件"盒体碰撞"
将其整齐摆放在四周如图:
在类默认值中
其中Build Info源于该蓝图类的父类中的结构体变量
到项目设置中创建自定义Trace Cannel
关于自定义Trace Cannel
UE5中的自定义 Object Channel 和 Trace Channel-CSDN博客
命名如下,并将类默认值设置为
创建蓝图接口
用于返回盒体碰撞
实现如下
到函数“建造模型中”提取出Hit Actor 和 Hit Component成为变量
关于建筑放置组件
UE5创建“建筑放置预览组件“-CSDN博客
新建函数Snapping Point在BPC_BuildCompoment中
获取Hit Actor的盒体碰撞
因为先前线体追踪时传入的Array为预览体BP_FoundationMaster,因此可以调用其接口
获取并检查Hit Component是否为我们返回ReturnBoxes的类型相同
若为True
设置返回值Local Found为True
根据返回值的不同
检查HitComponent后进行对应的返回,为True设置预览体放置的Transfrom为对应盒体碰撞的Transfrom
最后到Bulid Mode Cilent中修改对应分支
最终效果