82 bool ignore_simplify);
98 int *r_num_deformed_verts))[3];
114 bool switch_view_to_lower_level);
173 const float (*vert_coords)[3],
174 int num_vert_coords);
190 struct Mesh *coarse_mesh,
227 const struct Object *
object,
229 bool use_render_params,
230 bool ignore_simplify,
231 bool ignore_control_edges);
typedef float(TangentPoint)[2]
void multires_set_tot_level(struct Object *ob, struct MultiresModifierData *mmd, int lvl)
void multiresModifier_prepare_join(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob, struct Object *to_ob)
void multires_force_external_reload(struct Object *object)
bool multiresModifier_reshapeFromCCG(int tot_level, struct Mesh *coarse_mesh, struct SubdivCCG *subdiv_ccg)
void multiresModifier_sync_levels_ex(struct Object *ob_dst, struct MultiresModifierData *mmd_src, struct MultiresModifierData *mmd_dst)
void multires_modifier_update_mdisps(struct DerivedMesh *dm, struct Scene *scene)
void multiresModifier_del_levels(struct MultiresModifierData *mmd, struct Scene *scene, struct Object *object, int direction)
void multires_stitch_grids(struct Object *)
void multires_force_sculpt_rebuild(struct Object *object)
struct MultiresModifierData * get_multires_modifier(struct Scene *scene, struct Object *ob, bool use_first)
struct MultiresModifierData * find_multires_modifier_before(struct Scene *scene, struct ModifierData *lastmd)
void multires_do_versions_simple_to_catmull_clark(struct Object *object, struct MultiresModifierData *mmd)
void multires_topology_changed(struct Mesh *me)
int mdisp_rot_face_to_crn(struct MVert *mvert, struct MPoly *mpoly, struct MLoop *mloop, const struct MLoopTri *lt, int face_side, float u, float v, float *x, float *y)
BLI_INLINE void BKE_multires_construct_tangent_matrix(float tangent_matrix[3][3], const float dPdu[3], const float dPdv[3], int corner)
void multiresModifier_set_levels_from_disps(struct MultiresModifierData *mmd, struct Object *ob)
void old_mdisps_bilinear(float out[3], float(*disps)[3], int st, float u, float v)
void BKE_multires_subdiv_settings_init(struct SubdivSettings *settings, const struct MultiresModifierData *mmd)
int multires_get_level(const struct Scene *scene, const struct Object *ob, const struct MultiresModifierData *mmd, bool render, bool ignore_simplify)
void multiresModifier_base_apply(struct Depsgraph *depsgraph, struct Object *object, struct MultiresModifierData *mmd)
void multires_customdata_delete(struct Mesh *me)
@ MULTIRES_USE_RENDER_PARAMS
@ MULTIRES_ALLOC_PAINT_MASK
@ MULTIRES_IGNORE_SIMPLIFY
void BKE_multires_subdiv_mesh_settings_init(struct SubdivToMeshSettings *mesh_settings, const struct Scene *scene, const struct Object *object, const struct MultiresModifierData *mmd, bool use_render_params, bool ignore_simplify, bool ignore_control_edges)
bool multiresModifier_reshapeFromObject(struct Depsgraph *depsgraph, struct MultiresModifierData *mmd, struct Object *dst, struct Object *src)
void multires_ensure_external_read(struct Mesh *mesh, int top_level)
int multires_mdisp_corners(const struct MDisps *s)
bool multiresModifier_reshapeFromVertcos(struct Depsgraph *depsgraph, struct Object *object, struct MultiresModifierData *mmd, const float(*vert_coords)[3], int num_vert_coords)
void multiresModifier_ensure_external_read(struct Mesh *mesh, const struct MultiresModifierData *mmd)
int multiresModifier_rebuild_subdiv(struct Depsgraph *depsgraph, struct Object *object, struct MultiresModifierData *mmd, int rebuild_limit, bool switch_view_to_lower_level)
float(* BKE_multires_create_deformed_base_mesh_vert_coords(struct Depsgraph *depsgraph, struct Object *object, struct MultiresModifierData *mmd, int *r_num_deformed_verts))[3]
struct DerivedMesh * multires_make_derived_from_derived(struct DerivedMesh *dm, struct MultiresModifierData *mmd, struct Scene *scene, struct Object *ob, MultiresFlags flags)
eMultiresSubdivideModeType
@ MULTIRES_SUBDIVIDE_LINEAR
@ MULTIRES_SUBDIVIDE_CATMULL_CLARK
@ MULTIRES_SUBDIVIDE_SIMPLE
void multiresModifier_scale_disp(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob)
void multiresModifier_subdivide_to_level(struct Object *object, struct MultiresModifierData *mmd, int top_level, eMultiresSubdivideModeType mode)
bool multiresModifier_reshapeFromDeformModifier(struct Depsgraph *depsgraph, struct Object *ob, struct MultiresModifierData *mmd, struct ModifierData *deform_md)
void multiresModifier_subdivide(struct Object *object, struct MultiresModifierData *mmd, eMultiresSubdivideModeType mode)
void multires_modifier_update_hidden(struct DerivedMesh *dm)
void multires_subdivide_create_tangent_displacement_linear_grids(struct Object *object, struct MultiresModifierData *mmd)
void multires_flush_sculpt_updates(struct Object *object)
void multires_mark_as_modified(struct Depsgraph *depsgraph, struct Object *object, enum MultiresModifiedFlags flags)
struct Mesh * BKE_multires_create_mesh(struct Depsgraph *depsgraph, struct Object *object, struct MultiresModifierData *mmd)
struct Depsgraph Depsgraph
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint y
ATTR_WARN_UNUSED_RESULT const BMVert * v
const Depsgraph * depsgraph
SyclQueue void void * src
static const pxr::TfToken st("st", pxr::TfToken::Immortal)
static const pxr::TfToken out("out", pxr::TfToken::Immortal)