#include "importer_mesh.h"
#include "core/io/marshalls.h"
#include "core/math/convex_hull.h"
#include "core/math/random_pcg.h"
#include "core/math/static_raycaster.h"
#include "scene/resources/animation_library.h"
#include "scene/resources/surface_tool.h"
#include <cstdint>
void ImporterMesh::Surface::split_normals(const LocalVector<int> &p_indices, const LocalVector<Vector3> &p_normals) { … }
void ImporterMesh::Surface::_split_normals(Array &r_arrays, const LocalVector<int> &p_indices, const LocalVector<Vector3> &p_normals) { … }
String ImporterMesh::validate_blend_shape_name(const String &p_name) { … }
void ImporterMesh::add_blend_shape(const String &p_name) { … }
int ImporterMesh::get_blend_shape_count() const { … }
String ImporterMesh::get_blend_shape_name(int p_blend_shape) const { … }
void ImporterMesh::set_blend_shape_mode(Mesh::BlendShapeMode p_blend_shape_mode) { … }
Mesh::BlendShapeMode ImporterMesh::get_blend_shape_mode() const { … }
void ImporterMesh::add_surface(Mesh::PrimitiveType p_primitive, const Array &p_arrays, const TypedArray<Array> &p_blend_shapes, const Dictionary &p_lods, const Ref<Material> &p_material, const String &p_name, const uint64_t p_flags) { … }
int ImporterMesh::get_surface_count() const { … }
Mesh::PrimitiveType ImporterMesh::get_surface_primitive_type(int p_surface) { … }
Array ImporterMesh::get_surface_arrays(int p_surface) const { … }
String ImporterMesh::get_surface_name(int p_surface) const { … }
void ImporterMesh::set_surface_name(int p_surface, const String &p_name) { … }
Array ImporterMesh::get_surface_blend_shape_arrays(int p_surface, int p_blend_shape) const { … }
int ImporterMesh::get_surface_lod_count(int p_surface) const { … }
Vector<int> ImporterMesh::get_surface_lod_indices(int p_surface, int p_lod) const { … }
float ImporterMesh::get_surface_lod_size(int p_surface, int p_lod) const { … }
uint64_t ImporterMesh::get_surface_format(int p_surface) const { … }
Ref<Material> ImporterMesh::get_surface_material(int p_surface) const { … }
void ImporterMesh::set_surface_material(int p_surface, const Ref<Material> &p_material) { … }
void ImporterMesh::optimize_indices_for_cache() { … }
#define VERTEX_SKIN_FUNC(bone_count, vert_idx, read_array, write_array, transform_array, bone_array, weight_array) …
void ImporterMesh::generate_lods(float p_normal_merge_angle, float p_normal_split_angle, Array p_bone_transform_array, bool p_raycast_normals) { … }
void ImporterMesh::_generate_lods_bind(float p_normal_merge_angle, float p_normal_split_angle, Array p_skin_pose_transform_array) { … }
bool ImporterMesh::has_mesh() const { … }
Ref<ArrayMesh> ImporterMesh::get_mesh(const Ref<ArrayMesh> &p_base) { … }
void ImporterMesh::clear() { … }
void ImporterMesh::create_shadow_mesh() { … }
Ref<ImporterMesh> ImporterMesh::get_shadow_mesh() const { … }
void ImporterMesh::_set_data(const Dictionary &p_data) { … }
Dictionary ImporterMesh::_get_data() const { … }
Vector<Face3> ImporterMesh::get_faces() const { … }
Vector<Ref<Shape3D>> ImporterMesh::convex_decompose(const Ref<MeshConvexDecompositionSettings> &p_settings) const { … }
Ref<ConvexPolygonShape3D> ImporterMesh::create_convex_shape(bool p_clean, bool p_simplify) const { … }
Ref<ConcavePolygonShape3D> ImporterMesh::create_trimesh_shape() const { … }
Ref<NavigationMesh> ImporterMesh::create_navigation_mesh() { … }
extern bool (*array_mesh_lightmap_unwrap_callback)(float p_texel_size, const float *p_vertices, const float *p_normals, int p_vertex_count, const int *p_indices, int p_index_count, const uint8_t *p_cache_data, bool *r_use_cache, uint8_t **r_mesh_cache, int *r_mesh_cache_size, float **r_uv, int **r_vertex, int *r_vertex_count, int **r_index, int *r_index_count, int *r_size_hint_x, int *r_size_hint_y);
struct EditorSceneFormatImporterMeshLightmapSurface { … };
static const uint32_t custom_shift[RS::ARRAY_CUSTOM_COUNT] = …;
Error ImporterMesh::lightmap_unwrap_cached(const Transform3D &p_base_transform, float p_texel_size, const Vector<uint8_t> &p_src_cache, Vector<uint8_t> &r_dst_cache) { … }
void ImporterMesh::set_lightmap_size_hint(const Size2i &p_size) { … }
Size2i ImporterMesh::get_lightmap_size_hint() const { … }
void ImporterMesh::_bind_methods() { … }