Blender  V3.3
Functions | Variables
MOD_weightvgmix.c File Reference
#include "BLI_utildefines.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BLT_translation.h"
#include "DNA_defaults.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_modifier_types.h"
#include "DNA_object_types.h"
#include "DNA_screen_types.h"
#include "BKE_context.h"
#include "BKE_customdata.h"
#include "BKE_deform.h"
#include "BKE_lib_query.h"
#include "BKE_modifier.h"
#include "BKE_screen.h"
#include "BKE_texture.h"
#include "UI_interface.h"
#include "UI_resources.h"
#include "RNA_access.h"
#include "RNA_prototypes.h"
#include "DEG_depsgraph_build.h"
#include "DEG_depsgraph_query.h"
#include "MEM_guardedalloc.h"
#include "MOD_modifiertypes.h"
#include "MOD_ui_common.h"
#include "MOD_util.h"
#include "MOD_weightvg_util.h"

Go to the source code of this file.

Functions

static float mix_weight (float weight, float weight2, char mix_mode)
 
static void initData (ModifierData *md)
 
static void requiredDataMask (Object *UNUSED(ob), ModifierData *md, CustomData_MeshMasks *r_cddata_masks)
 
static bool dependsOnTime (struct Scene *UNUSED(scene), ModifierData *md)
 
static void foreachIDLink (ModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
 
static void foreachTexLink (ModifierData *md, Object *ob, TexWalkFunc walk, void *userData)
 
static void updateDepsgraph (ModifierData *md, const ModifierUpdateDepsgraphContext *ctx)
 
static bool isDisabled (const struct Scene *UNUSED(scene), ModifierData *md, bool UNUSED(useRenderParams))
 
static MeshmodifyMesh (ModifierData *md, const ModifierEvalContext *ctx, Mesh *mesh)
 
static void panel_draw (const bContext *UNUSED(C), Panel *panel)
 
static void influence_panel_draw (const bContext *C, Panel *panel)
 
static void panelRegister (ARegionType *region_type)
 

Variables

ModifierTypeInfo modifierType_WeightVGMix
 

Function Documentation

◆ dependsOnTime()

static bool dependsOnTime ( struct Scene UNUSEDscene,
ModifierData md 
)
static

◆ foreachIDLink()

static void foreachIDLink ( ModifierData md,
Object ob,
IDWalkFunc  walk,
void userData 
)
static

◆ foreachTexLink()

static void foreachTexLink ( ModifierData md,
Object ob,
TexWalkFunc  walk,
void userData 
)
static

Definition at line 166 of file MOD_weightvgmix.c.

◆ influence_panel_draw()

static void influence_panel_draw ( const bContext C,
Panel panel 
)
static

◆ initData()

static void initData ( ModifierData md)
static

◆ isDisabled()

static bool isDisabled ( const struct Scene UNUSEDscene,
ModifierData md,
bool   UNUSEDuseRenderParams 
)
static

Definition at line 194 of file MOD_weightvgmix.c.

References WeightVGMixModifierData::defgrp_name_a.

◆ mix_weight()

static float mix_weight ( float  weight,
float  weight2,
char  mix_mode 
)
static

◆ modifyMesh()

static Mesh* modifyMesh ( ModifierData md,
const ModifierEvalContext ctx,
Mesh mesh 
)
static

Definition at line 203 of file MOD_weightvgmix.c.

References BKE_defvert_find_index(), BKE_id_defgroup_name_index(), BLI_assert, BLI_listbase_is_empty(), CD_CALLOC, CD_MDEFORMVERT, CustomData_add_layer(), CustomData_duplicate_referenced_layer(), CustomData_has_layer(), WeightVGMixModifierData::default_weight_a, WeightVGMixModifierData::default_weight_b, WeightVGMixModifierData::defgrp_name_a, WeightVGMixModifierData::defgrp_name_b, DEG_get_evaluated_scene(), ModifierEvalContext::depsgraph, Mesh::dvert, WeightVGMixModifierData::flag, Mesh::id, indices, Mesh_Runtime::is_original, WeightVGMixModifierData::mask_constant, WeightVGMixModifierData::mask_defgrp_name, WeightVGMixModifierData::mask_tex_map_bone, WeightVGMixModifierData::mask_tex_map_obj, WeightVGMixModifierData::mask_tex_mapping, WeightVGMixModifierData::mask_tex_use_channel, WeightVGMixModifierData::mask_tex_uvlayer_name, WeightVGMixModifierData::mask_texture, MEM_freeN, MEM_malloc_arrayN, MEM_SAFE_FREE, mesh, WeightVGMixModifierData::mix_mode, WeightVGMixModifierData::mix_set, mix_weight(), MOD_WVG_MIX_INVERT_VGROUP_A, MOD_WVG_MIX_INVERT_VGROUP_B, MOD_WVG_MIX_INVERT_VGROUP_MASK, MOD_WVG_MIX_WEIGHTS_NORMALIZE, MOD_WVG_SET_A, MOD_WVG_SET_ALL, MOD_WVG_SET_AND, MOD_WVG_SET_B, MOD_WVG_SET_OR, ModifierData::mode, WeightVGMixModifierData::modifier, NULL, ModifierEvalContext::object, Mesh::runtime, scene, Mesh::totvert, Mesh::vdata, Mesh::vertex_group_names, MDeformWeight::weight, weightvg_do_mask(), and weightvg_update_vg().

◆ panel_draw()

static void panel_draw ( const bContext UNUSEDC,
Panel panel 
)
static

◆ panelRegister()

static void panelRegister ( ARegionType region_type)
static

◆ requiredDataMask()

static void requiredDataMask ( Object UNUSEDob,
ModifierData md,
CustomData_MeshMasks r_cddata_masks 
)
static

◆ updateDepsgraph()

static void updateDepsgraph ( ModifierData md,
const ModifierUpdateDepsgraphContext ctx 
)
static

Variable Documentation

◆ modifierType_WeightVGMix

ModifierTypeInfo modifierType_WeightVGMix

Definition at line 498 of file MOD_weightvgmix.c.