diff --git a/doc/base/classes.xml b/doc/base/classes.xml index e568ab996f9..b949fde8a4c 100644 --- a/doc/base/classes.xml +++ b/doc/base/classes.xml @@ -39845,43 +39845,58 @@ Helper tool to create geometry. - Helper tool to create geometry. + The [SurfaceTool] is used to construct a [Mesh] by specifying vertex attributes individually. It can be used to construct a [Mesh] from script. All properties except index need to be added before a call to [method add_vertex]. For example adding vertex colors and UVs looks like + [codeblock] + var st = SurfaceTool.new() + st.begin(Mesh.PRIMITIVE_TRIANGLES) + st.add_color(Color(1, 0, 0)) + st.add_uv(Vector2(0, 0)) + st.add_vertex(Vector3(0, 0, 0)) + [/codeblock] + The [SurfaceTool] now contains one vertex of a triangle which has a UV coordinate and a specified [Color]. If another vertex were added without calls to [method add_uv] or [method add_color] then the last values would be used. + It is very important that vertex attributes are passed [b]before[/b] the call to [method add_vertex], failure to do this will result in an error when committing the vertex information to a mesh. + Add an array of bones for the next Vertex to use. + Specify a [Color] for the next Vertex to use. + Adds an index to index array if you are using indexed Vertices. Does not need to be called before adding Vertex. + Specify a normal for the next Vertex to use. + Specify whether current Vertex (if using only Vertex arrays) or current index (if also using index arrays) should utilize smooth normals for normal calculation. + Specify a Tangent for the next Vertex to use. @@ -39898,40 +39913,47 @@ + Insert a triangle fan made of array data into [Mesh] being constructed. + Specify UV Coordinate for next Vertex to use. + Specify an optional second set of UV coordinates for next Vertex to use. + Specify position of current Vertex. Should be called after specifying other vertex properties (e.g. Color, UV). + Specify weight value for next Vertex to use. + Called before adding any Vertices. Takes the primitive type as an argument (e.g. Mesh.PRIMITIVE_TRIANGLES). + Clear all information passed into the surface tool so far. @@ -39940,24 +39962,29 @@ + Returns a constructed [Mesh] from current information passed in. If an existing [Mesh] is passed in as an argument, will add an extra surface to the existing [Mesh]. + Removes index array by expanding Vertex array. + Generates normals from Vertices so you do not have to do it manually. + Shrinks Vertex array by creating an index array. Avoids reusing Vertices. + Sets [Material] to be used by the [Mesh] you are constructing.