我想在Runtime模式下 通过鼠标左键识别当前材质的index

我想在Runtime模式下 通过鼠标左键识别当前材质的index 请问该如何

1 Like

做LineTrace的话BP和C++都可以
这里有BP的文档
https://docs.unrealengine.com/latest/INT/Gameplay/HowTo/UseRaycasts/Blueprints/

但是要获取材质的Index,可能还是要通过C++。

这里有一个回答可能对你有帮助
https://stackoverflow.com/questions/…nreal-engine-4

大致思路就是
FHitResult返回FaceIndex,
去FStaticMeshLODResources里遍历Section和三角形,
查询得到FaceIndex对应哪个Section,
然后获取Section的MaterialIndex。

2 Likes

大赞,支持 UE Community Manager!

非常感谢支持 (^-^)

给你介绍个好东西!!节点:get hit result under cursor by channel. 测试代码都给你写好了!

1 Like

补充一下,这里有一个现成的BP节点

https://docs.unrealengine.com/latest/INT/BlueprintAPI/Components/Mesh/GetMaterialfromCollisionFaceInde-/

1 Like