The documentation you can find here : Procedural Mesh | Unreal Engine Documentation
The procedural mesh component is consist of Four static functions and three member functions, which are all accessible in blueprints. the following is a short description :
Create Mesh Section : Clear all mesh sections and reset to empty state Target is Procedural Mesh Component ( mainly it means that it removes what you already have created.
Clear Mesh Section : Clear a section of the procedural mesh. Other sections do not change index. Target is Procedural Mesh Component ( it means that it remove a section of what you have created, if you have created your mesh in separate steps and with different section index )
Create Mesh Section : Create/replace a section for this procedural mesh component. Target is Procedural Mesh Component ( this is the main function which create your mesh, after which your mesh is visible. normally it is the last function call in your logic )
Regarding the remaining static function I will just tell the most important one
Calculate Tangents for Mesh : Automatically generate Normals and Tangent vector array for a mesh UVs are required for correct tangent generation. Target is Kismet Procedural Mesh Library ( this creates the normal and tangent array for you, and you need to pass them to “Clear Mesh Section” function for the lighting and mapping works and be accurate )
Some point to consider :
Calculate Tangents for Mesh : function is a very time consuming function, so be careful about when to use it. my advice is to use threading for calling this function.
you need to calculate the followings your self :
1 - An array of FVector that your data is in.
2 - An array for the indexed Trianlges
3 - An array of Vector2 for UV mapping
Other points :
If it is possible try to break your mesh in smaller sections and create them separately. for this you need to pass different SectionId to “Clear Mesh Section”. this helps your program to be faster.
In case you have a mesh which its size does not change but the value of its points changes, most probably you won’t need to calculate the Triangle index array and UV array in each time you wanna update the mesh.
in case you want some example leave me a comment to share an image of my blueprints.