Blender V4.3
mesh.cpp File Reference
#include <optional>
#include "blender/attribute_convert.h"
#include "blender/session.h"
#include "blender/sync.h"
#include "blender/util.h"
#include "scene/camera.h"
#include "scene/colorspace.h"
#include "scene/mesh.h"
#include "scene/object.h"
#include "scene/scene.h"
#include "subd/patch.h"
#include "subd/split.h"
#include "util/algorithm.h"
#include "util/color.h"
#include "util/disjoint_set.h"
#include "util/foreach.h"
#include "util/hash.h"
#include "util/log.h"
#include "util/math.h"
#include "mikktspace.hh"
#include "BKE_attribute.hh"
#include "BKE_attribute_math.hh"
#include "BKE_customdata.hh"
#include "BKE_mesh.hh"

Go to the source code of this file.

Classes

struct  MikkMeshWrapper< is_subd >
 
class  VertexAverageComparator
 

Functions

static void mikk_compute_tangents (const ::Mesh &b_mesh, const char *layer_name, Mesh *mesh, bool need_sign, bool active_render)
 
static void attr_create_motion_from_velocity (Mesh *mesh, const blender::Span< blender::float3 > b_attr, const float motion_scale)
 
static void attr_create_generic (Scene *scene, Mesh *mesh, const ::Mesh &b_mesh, const bool subdivision, const bool need_motion, const float motion_scale)
 
static set< ustring > get_blender_uv_names (const ::Mesh &b_mesh)
 
static void attr_create_uv_map (Scene *scene, Mesh *mesh, const ::Mesh &b_mesh, const set< ustring > &blender_uv_names)
 
static void attr_create_subd_uv_map (Scene *scene, Mesh *mesh, const ::Mesh &b_mesh, bool subdivide_uvs, const set< ustring > &blender_uv_names)
 
static void attr_create_pointiness (Mesh *mesh, const blender::Span< blender::float3 > positions, const blender::Span< blender::float3 > b_vert_normals, const blender::Span< blender::int2 > edges, bool subdivision)
 
static void attr_create_random_per_island (Scene *scene, Mesh *mesh, const ::Mesh &b_mesh, bool subdivision)
 
static void create_mesh (Scene *scene, Mesh *mesh, const ::Mesh &b_mesh, const array< Node * > &used_shaders, const bool need_motion, const float motion_scale, const bool subdivision=false, const bool subdivide_uvs=true)
 
static void create_subd_mesh (Scene *scene, Mesh *mesh, BObjectInfo &b_ob_info, const ::Mesh &b_mesh, const array< Node * > &used_shaders, const bool need_motion, const float motion_scale, float dicing_rate, int max_subdivisions)
 

Function Documentation

◆ attr_create_generic()

◆ attr_create_motion_from_velocity()

static void attr_create_motion_from_velocity ( Mesh * mesh,
const blender::Span< blender::float3 > b_attr,
const float motion_scale )
static

◆ attr_create_pointiness()

◆ attr_create_random_per_island()

static void attr_create_random_per_island ( Scene * scene,
Mesh * mesh,
const ::Mesh & b_mesh,
bool subdivision )
static

◆ attr_create_subd_uv_map()

◆ attr_create_uv_map()

◆ create_mesh()

◆ create_subd_mesh()

static void create_subd_mesh ( Scene * scene,
Mesh * mesh,
BObjectInfo & b_ob_info,
const ::Mesh & b_mesh,
const array< Node * > & used_shaders,
const bool need_motion,
const float motion_scale,
float dicing_rate,
int max_subdivisions )
static

◆ get_blender_uv_names()

static set< ustring > get_blender_uv_names ( const ::Mesh & b_mesh)
static

◆ mikk_compute_tangents()

static void mikk_compute_tangents ( const ::Mesh & b_mesh,
const char * layer_name,
Mesh * mesh,
bool need_sign,
bool active_render )
static