28#include "RNA_prototypes.hh"
99 printf(
"SurfaceModifier deform_verts: Should not happen!\n");
104 uint mesh_verts_num = 0,
i = 0;
107 surmd->
runtime.
mesh->vert_positions_for_write().copy_from(positions);
131 for (
i = 0;
i < mesh_verts_num;
i++) {
132 float *vec = positions[
i];
166 layout->
label(
RPT_(
"Settings are inside the Physics tab"), ICON_NONE);
186 "SurfaceModifierData",
188 &RNA_SurfaceModifier,
void BKE_id_free(Main *bmain, void *idv)
Mesh * BKE_mesh_copy_for_eval(const Mesh &source)
void BKE_modifier_copydata_generic(const ModifierData *md, ModifierData *md_dst, int flag)
@ eModifierTypeFlag_NoUserAdd
@ eModifierTypeFlag_AcceptsCVs
@ eModifierTypeFlag_AcceptsMesh
void mul_m4_v3(const float M[4][4], float r[3])
MINLINE void sub_v3_v3v3(float r[3], const float a[3], const float b[3])
MINLINE void copy_v3_v3(float r[3], const float a[3])
MINLINE void zero_v3(float r[3])
#define MEMCMP_STRUCT_AFTER_IS_ZERO(struct_var, member)
#define MEMCPY_STRUCT_AFTER(struct_dst, struct_src, member)
float DEG_get_ctime(const Depsgraph *graph)
#define DNA_struct_default_get(struct_name)
Object is a sort of wrapper for general info.
Read Guarded memory(de)allocation.
static void init_data(ModifierData *md)
static void deform_verts(ModifierData *md, const ModifierEvalContext *ctx, Mesh *mesh, blender::MutableSpan< blender::float3 > positions)
static void panel_register(ARegionType *region_type)
static void blend_read(BlendDataReader *, ModifierData *md)
static void panel_draw(const bContext *, Panel *panel)
static void copy_data(const ModifierData *md, ModifierData *target, const int flag)
static void free_data(ModifierData *md)
static bool depends_on_time(Scene *, ModifierData *)
static void init_data(ModifierData *md)
static void deform_verts(ModifierData *md, const ModifierEvalContext *ctx, Mesh *mesh, blender::MutableSpan< blender::float3 > positions)
static void panel_register(ARegionType *region_type)
ModifierTypeInfo modifierType_Surface
static void copy_data(const ModifierData *md_src, ModifierData *md_dst, const int flag)
static void blend_read(BlendDataReader *, ModifierData *md)
static void free_data(ModifierData *md)
static void panel_draw(const bContext *, Panel *panel)
static bool depends_on_time(Scene *, ModifierData *)
PanelType * modifier_panel_register(ARegionType *region_type, ModifierType type, PanelDrawFn draw)
PointerRNA * modifier_panel_get_property_pointers(Panel *panel, PointerRNA *r_ob_ptr)
void modifier_error_message_draw(uiLayout *layout, PointerRNA *ptr)
void * MEM_calloc_arrayN(size_t len, size_t size, const char *str)
static void init(bNodeTree *, bNode *node)
float(* vert_positions_prev)[3]
BVHTreeFromMeshHandle * bvhtree
float(* vert_velocities)[3]
SurfaceModifierData_Runtime runtime
void label(blender::StringRef name, int icon)