Struct gdnative_bindings_lily::ArrayMesh[][src]

pub struct ArrayMesh { /* fields omitted */ }
Expand description

core class ArrayMesh inherits Mesh (reference counted).

Official documentation

See the documentation of this class in the Godot engine’s official documentation. The method descriptions are generated from it and typically contain code samples in GDScript, not Rust.

Memory management

The lifetime of this object is automatically managed through reference counting.

Class hierarchy

ArrayMesh inherits methods from:

Safety

All types in the Godot API have “interior mutability” in Rust parlance. To enforce that the official thread-safety guidelines are followed, the typestate pattern is used in the Ref and TRef smart pointers, and the Instance API. The typestate Access in these types tracks whether the access is unique, shared, or exclusive to the current thread. For more information, see the type-level documentation on Ref.

Implementations

Constants

Creates a new instance of this object.

This is a reference-counted type. The returned object is automatically managed by Ref.

Adds name for a blend shape that will be added with [method add_surface_from_arrays]. Must be called before surface is added.

Creates a new surface. Surfaces are created to be rendered using a primitive, which may be any of the types defined in [enum Mesh.PrimitiveType]. (As a note, when using indices, it is recommended to only use points, lines or triangles.) [method Mesh.get_surface_count] will become the surf_idx for this new surface. The arrays argument is an array of arrays. See [enum ArrayType] for the values used in this array. For example, arrays[0] is the array of vertices. That first vertex sub-array is always required; the others are optional. Adding an index array puts this function into “index mode” where the vertex and other arrays become the sources of data and the index array defines the vertex order. All sub-arrays must have the same length as the vertex array or be empty, except for [constant ARRAY_INDEX] if it is used. Adding an index array puts this function into “index mode” where the vertex and other arrays become the sources of data, and the index array defines the order of the vertices.

Default Arguments

  • blend_shapes - [ ]
  • compress_flags - 97280

Removes all blend shapes from this ArrayMesh.

Returns the number of blend shapes that the ArrayMesh holds.

Sets the blend shape mode to one of [enum Mesh.BlendShapeMode].

Returns the name of the blend shape at this index.

Overrides the [AABB] with one defined by user for use with frustum culling. Especially useful to avoid unexpected culling when using a shader to offset vertices.

Will perform a UV unwrap on the ArrayMesh to prepare the mesh for lightmapping.

Will regenerate normal maps for the ArrayMesh.

Sets the blend shape mode to one of [enum Mesh.BlendShapeMode].

Overrides the [AABB] with one defined by user for use with frustum culling. Especially useful to avoid unexpected culling when using a shader to offset vertices.

Returns the index of the first surface with this name held within this ArrayMesh. If none are found, -1 is returned.

Returns the length in indices of the index array in the requested surface (see [method add_surface_from_arrays]).

Returns the length in vertices of the vertex array in the requested surface (see [method add_surface_from_arrays]).

Returns the format mask of the requested surface (see [method add_surface_from_arrays]).

Gets the name assigned to this surface.

Returns the primitive type of the requested surface (see [method add_surface_from_arrays]).

Removes a surface at position surf_idx, shifting greater surfaces one surf_idx slot down.

Sets a name for a given surface.

Updates a specified region of mesh arrays on the GPU. Warning: Only use if you know what you are doing. You can easily cause crashes by calling this function with improper arguments.

Methods from Deref<Target = Mesh>

Calculate a ConvexPolygonShape from the mesh.

Calculate an outline mesh at a defined offset (margin) from the original mesh. Note: This method typically returns the vertices in reverse order (e.g. clockwise to counterclockwise).

Calculate a ConcavePolygonShape from the mesh.

Generate a TriangleMesh from the mesh.

Returns the smallest [AABB] enclosing this mesh in local space. Not affected by custom_aabb. See also [method VisualInstance.get_transformed_aabb]. Note: This is only implemented for ArrayMesh and PrimitiveMesh.

Returns all the vertices that make up the faces of the mesh. Each three vertices represent one triangle.

Sets a hint to be used for lightmap resolution in BakedLightmap. Overrides [member BakedLightmap.bake_default_texels_per_unit].

Returns the amount of surfaces that the Mesh holds.

Sets a hint to be used for lightmap resolution in BakedLightmap. Overrides [member BakedLightmap.bake_default_texels_per_unit].

Returns the arrays for the vertices, normals, uvs, etc. that make up the requested surface (see [method ArrayMesh.add_surface_from_arrays]).

Returns the blend shape arrays for the requested surface.

Returns a Material in a given surface. Surface is rendered using this material.

Sets a Material for a given surface. Surface will be rendered using this material.

Trait Implementations

Formats the value using the given formatter. Read more

The resulting type after dereferencing.

Dereferences the value.

Mutably dereferences the value.

The memory management kind of this type. This modifies the behavior of the Ref smart pointer. See its type-level documentation for more information. Read more

Creates an explicitly null reference of Self as a method argument. This makes type inference easier for the compiler compared to Option. Read more

Creates a new instance of Self using a zero-argument constructor, as a Unique reference. Read more

Performs a dynamic reference downcast to target type. Read more

Performs a static reference upcast to a supertype that is guaranteed to be valid. Read more

Creates a persistent reference to the same Godot object with shared thread access. Read more

Creates a persistent reference to the same Godot object with thread-local thread access. Read more

Creates a persistent reference to the same Godot object with unique access. Read more

Recovers a instance ID previously returned by Object::get_instance_id if the object is still alive. See also TRef::try_from_instance_id. Read more

Recovers a instance ID previously returned by Object::get_instance_id if the object is still alive, and panics otherwise. This does NOT guarantee that the resulting reference is safe to use. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.