Changeset View
Changeset View
Standalone View
Standalone View
source/blender/modifiers/intern/MOD_weightvgproximity.c
| Show All 25 Lines | |||||
| #include "BLI_ghash.h" | #include "BLI_ghash.h" | ||||
| #include "BLI_listbase.h" | #include "BLI_listbase.h" | ||||
| #include "BLI_math.h" | #include "BLI_math.h" | ||||
| #include "BLI_rand.h" | #include "BLI_rand.h" | ||||
| #include "BLI_task.h" | #include "BLI_task.h" | ||||
| #include "BLT_translation.h" | #include "BLT_translation.h" | ||||
| #include "DNA_defaults.h" | |||||
| #include "DNA_mesh_types.h" | #include "DNA_mesh_types.h" | ||||
| #include "DNA_meshdata_types.h" | #include "DNA_meshdata_types.h" | ||||
| #include "DNA_modifier_types.h" | #include "DNA_modifier_types.h" | ||||
| #include "DNA_object_types.h" | #include "DNA_object_types.h" | ||||
| #include "DNA_screen_types.h" | #include "DNA_screen_types.h" | ||||
| #include "BKE_bvhutils.h" | #include "BKE_bvhutils.h" | ||||
| #include "BKE_context.h" | #include "BKE_context.h" | ||||
| ▲ Show 20 Lines • Show All 268 Lines • ▼ Show 20 Lines | |||||
| /************************************** | /************************************** | ||||
| * Modifiers functions. * | * Modifiers functions. * | ||||
| **************************************/ | **************************************/ | ||||
| static void initData(ModifierData *md) | static void initData(ModifierData *md) | ||||
| { | { | ||||
| WeightVGProximityModifierData *wmd = (WeightVGProximityModifierData *)md; | WeightVGProximityModifierData *wmd = (WeightVGProximityModifierData *)md; | ||||
| wmd->proximity_mode = MOD_WVG_PROXIMITY_OBJECT; | BLI_assert(MEMCMP_STRUCT_AFTER_IS_ZERO(wmd, modifier)); | ||||
| wmd->proximity_flags = MOD_WVG_PROXIMITY_GEOM_VERTS; | |||||
| wmd->falloff_type = MOD_WVG_MAPPING_NONE; | MEMCPY_STRUCT_AFTER(wmd, DNA_struct_default_get(WeightVGProximityModifierData), modifier); | ||||
| wmd->mask_constant = 1.0f; | |||||
| wmd->mask_tex_use_channel = MOD_WVG_MASK_TEX_USE_INT; /* Use intensity by default. */ | |||||
| wmd->mask_tex_mapping = MOD_DISP_MAP_LOCAL; | |||||
| wmd->max_dist = 1.0f; /* vert arbitrary distance, but don't use 0 */ | |||||
| } | } | ||||
| static void requiredDataMask(Object *UNUSED(ob), | static void requiredDataMask(Object *UNUSED(ob), | ||||
| ModifierData *md, | ModifierData *md, | ||||
| CustomData_MeshMasks *r_cddata_masks) | CustomData_MeshMasks *r_cddata_masks) | ||||
| { | { | ||||
| WeightVGProximityModifierData *wmd = (WeightVGProximityModifierData *)md; | WeightVGProximityModifierData *wmd = (WeightVGProximityModifierData *)md; | ||||
| ▲ Show 20 Lines • Show All 411 Lines • Show Last 20 Lines | |||||