Unreal利用ProceduralMesh生成射线

VR中与UI的一个重要的交互方式就是通过射线点击,现总结了一下通过proceduralMesh组件动态的生成射线。
如下图是proceduralMeshComponent的简介,可以自己定义生成mesh的结构。


proceduralMesh.png

利用这个组件生成mesh,我们主要用到的方法是CreateMeshSection,UpdateMeshSection。


CreateMeshSection.png
UpdateMeshSection.png

其中需要用到的参数也就是生成mesh需要的参数。
Vertices:顶点,存储所有顶点的位置信息。
Triangles:三角形,生成每个三角形的顶点,数组长度是3的倍数
Normals:法线,每个顶点的法线,可选项
UV0:uv,每个顶点的纹理坐标,可选项
VertexColors:顶点颜色。
Tangents:顶点的切线。
所以生成射线时只需要确定射线的长度,射线的宽度,就可以生成一条射线。
例如,我们要生成一条宽为2cm,长度为1000cm的射线,参数数组应该为

vertices:(0,0,0),(0,1000 ,0),(2,1000,0),(2,0,0)
triangles:0,1,2,2,3,0
uvs:(0,0),(0,1),(1,1),(1,0)

设定好参数后,即可生成一条射线:


射线.png

你可能感兴趣的:(Unreal利用ProceduralMesh生成射线)