Modifiers: Add wrapper functions with Mesh / DerivedMesh conversion
Makes the follow changes: - Add new `deform*` and `apply*` function pointers to `ModifierTypeInfo` that take `Mesh`, and rename the old functions to indicate that they take `DerivedMesh`. These new functions are currently set to `NULL` for all modifiers. - Add wrapper `modifier_deform*` and `modifier_apply*` functions in two variants: one that works with `Mesh` and the other which works with `DerivedMesh` that is named with `*_DM_depercated`. These functions check which type of data the modifier supports and converts if necessary - Update the rest of Blender to be aware and make use of these new functions The goal of these changes is to make it possible to port to using `Mesh` incrementally without ever needing to enter into a state where modifiers don't work. After everything has been ported over the old functions and wrappers could be removed. Reviewers: campbellbarton, sergey, mont29 Subscribers: sybren Tags: #bf_blender_2.8 Differential Revision: https://developer.blender.org/D3155
This commit is contained in:
@@ -35,6 +35,7 @@
|
|||||||
struct ID;
|
struct ID;
|
||||||
struct Depsgraph;
|
struct Depsgraph;
|
||||||
struct DerivedMesh;
|
struct DerivedMesh;
|
||||||
|
struct Mesh;
|
||||||
struct Object;
|
struct Object;
|
||||||
struct Scene;
|
struct Scene;
|
||||||
struct ViewLayer;
|
struct ViewLayer;
|
||||||
@@ -156,37 +157,38 @@ typedef struct ModifierTypeInfo {
|
|||||||
*/
|
*/
|
||||||
void (*copyData)(struct ModifierData *md, struct ModifierData *target);
|
void (*copyData)(struct ModifierData *md, struct ModifierData *target);
|
||||||
|
|
||||||
/********************* Deform modifier functions *********************/
|
|
||||||
|
/********************* Deform modifier functions *********************/ /* DEPRECATED */
|
||||||
|
|
||||||
/* Only for deform types, should apply the deformation
|
/* Only for deform types, should apply the deformation
|
||||||
* to the given vertex array. If the deformer requires information from
|
* to the given vertex array. If the deformer requires information from
|
||||||
* the object it can obtain it from the derivedData argument if non-NULL,
|
* the object it can obtain it from the derivedData argument if non-NULL,
|
||||||
* and otherwise the ob argument.
|
* and otherwise the ob argument.
|
||||||
*/
|
*/
|
||||||
void (*deformVerts)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
void (*deformVerts_DM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
struct Object *ob, struct DerivedMesh *derivedData,
|
struct Object *ob, struct DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts,
|
float (*vertexCos)[3], int numVerts,
|
||||||
ModifierApplyFlag flag);
|
ModifierApplyFlag flag);
|
||||||
|
|
||||||
/* Like deformMatricesEM but called from object mode (for supporting modifiers in sculpt mode) */
|
/* Like deformMatricesEM but called from object mode (for supporting modifiers in sculpt mode) */
|
||||||
void (*deformMatrices)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
void (*deformMatrices_DM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
struct Object *ob, struct DerivedMesh *derivedData,
|
struct Object *ob, struct DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts);
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts);
|
||||||
|
|
||||||
/* Like deformVerts but called during editmode (for supporting modifiers)
|
/* Like deformVerts but called during editmode (for supporting modifiers)
|
||||||
*/
|
*/
|
||||||
void (*deformVertsEM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
void (*deformVertsEM_DM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
struct Object *ob, struct BMEditMesh *editData,
|
struct Object *ob, struct BMEditMesh *editData,
|
||||||
struct DerivedMesh *derivedData,
|
struct DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], int numVerts);
|
float (*vertexCos)[3], int numVerts);
|
||||||
|
|
||||||
/* Set deform matrix per vertex for crazyspace correction */
|
/* Set deform matrix per vertex for crazyspace correction */
|
||||||
void (*deformMatricesEM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
void (*deformMatricesEM_DM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
struct Object *ob, struct BMEditMesh *editData,
|
struct Object *ob, struct BMEditMesh *editData,
|
||||||
struct DerivedMesh *derivedData,
|
struct DerivedMesh *derivedData,
|
||||||
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts);
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts);
|
||||||
|
|
||||||
/********************* Non-deform modifier functions *********************/
|
/********************* Non-deform modifier functions *********************/ /* DEPRECATED */
|
||||||
|
|
||||||
/* For non-deform types: apply the modifier and return a derived
|
/* For non-deform types: apply the modifier and return a derived
|
||||||
* data object (type is dependent on object type).
|
* data object (type is dependent on object type).
|
||||||
@@ -207,7 +209,7 @@ typedef struct ModifierTypeInfo {
|
|||||||
* The modifier may reuse the derivedData argument (i.e. return it in
|
* The modifier may reuse the derivedData argument (i.e. return it in
|
||||||
* modified form), but must not release it.
|
* modified form), but must not release it.
|
||||||
*/
|
*/
|
||||||
struct DerivedMesh *(*applyModifier)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
struct DerivedMesh *(*applyModifier_DM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
struct Object *ob, struct DerivedMesh *derivedData,
|
struct Object *ob, struct DerivedMesh *derivedData,
|
||||||
ModifierApplyFlag flag);
|
ModifierApplyFlag flag);
|
||||||
|
|
||||||
@@ -218,11 +220,77 @@ typedef struct ModifierTypeInfo {
|
|||||||
* are expected from editmode objects. The same qualifications regarding
|
* are expected from editmode objects. The same qualifications regarding
|
||||||
* derivedData apply as for applyModifier.
|
* derivedData apply as for applyModifier.
|
||||||
*/
|
*/
|
||||||
struct DerivedMesh *(*applyModifierEM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
struct DerivedMesh *(*applyModifierEM_DM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
struct Object *ob, struct BMEditMesh *editData,
|
struct Object *ob, struct BMEditMesh *editData,
|
||||||
struct DerivedMesh *derivedData, ModifierApplyFlag flag);
|
struct DerivedMesh *derivedData, ModifierApplyFlag flag);
|
||||||
|
|
||||||
|
|
||||||
|
/********************* Deform modifier functions *********************/
|
||||||
|
|
||||||
|
/* Only for deform types, should apply the deformation
|
||||||
|
* to the given vertex array. If the deformer requires information from
|
||||||
|
* the object it can obtain it from the mesh argument if non-NULL,
|
||||||
|
* and otherwise the ob argument.
|
||||||
|
*/
|
||||||
|
void (*deformVerts)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], int numVerts,
|
||||||
|
ModifierApplyFlag flag);
|
||||||
|
|
||||||
|
/* Like deformMatricesEM but called from object mode (for supporting modifiers in sculpt mode) */
|
||||||
|
void (*deformMatrices)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts);
|
||||||
|
|
||||||
|
/* Like deformVerts but called during editmode (for supporting modifiers)
|
||||||
|
*/
|
||||||
|
void (*deformVertsEM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData,
|
||||||
|
struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], int numVerts);
|
||||||
|
|
||||||
|
/* Set deform matrix per vertex for crazyspace correction */
|
||||||
|
void (*deformMatricesEM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData,
|
||||||
|
struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts);
|
||||||
|
|
||||||
|
/********************* Non-deform modifier functions *********************/
|
||||||
|
|
||||||
|
/* For non-deform types: apply the modifier and return a mesh object.
|
||||||
|
*
|
||||||
|
* The mesh argument should always be non-NULL; the modifier
|
||||||
|
* should read the object data from the mesh object instead of the
|
||||||
|
* actual object data.
|
||||||
|
*
|
||||||
|
* The useRenderParams argument indicates if the modifier is being
|
||||||
|
* applied in the service of the renderer which may alter quality
|
||||||
|
* settings.
|
||||||
|
*
|
||||||
|
* The isFinalCalc parameter indicates if the modifier is being
|
||||||
|
* calculated for a final result or for something temporary
|
||||||
|
* (like orcos). This is a hack at the moment, it is meant so subsurf
|
||||||
|
* can know if it is safe to reuse its internal cache.
|
||||||
|
*
|
||||||
|
* The modifier may reuse the mesh argument (i.e. return it in
|
||||||
|
* modified form), but must not release it.
|
||||||
|
*/
|
||||||
|
struct Mesh *(*applyModifier)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct Mesh *mesh,
|
||||||
|
ModifierApplyFlag flag);
|
||||||
|
|
||||||
|
/* Like applyModifier but called during editmode (for supporting
|
||||||
|
* modifiers).
|
||||||
|
*
|
||||||
|
* The mesh object that is returned must support the operations that
|
||||||
|
* are expected from editmode objects. The same qualifications regarding
|
||||||
|
* mesh apply as for applyModifier.
|
||||||
|
*/
|
||||||
|
struct Mesh *(*applyModifierEM)(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData,
|
||||||
|
struct Mesh *mesh, ModifierApplyFlag flag);
|
||||||
|
|
||||||
|
|
||||||
/********************* Optional functions *********************/
|
/********************* Optional functions *********************/
|
||||||
|
|
||||||
/* Initialize new instance data for this modifier type, this function
|
/* Initialize new instance data for this modifier type, this function
|
||||||
@@ -419,7 +487,7 @@ void modifier_path_init(char *path, int path_maxlen, const char *name);
|
|||||||
const char *modifier_path_relbase(struct Object *ob);
|
const char *modifier_path_relbase(struct Object *ob);
|
||||||
|
|
||||||
|
|
||||||
/* wrappers for modifier callbacks */
|
/* wrappers for modifier callbacks that ensure valid normals */
|
||||||
|
|
||||||
struct DerivedMesh *modwrap_applyModifier(
|
struct DerivedMesh *modwrap_applyModifier(
|
||||||
ModifierData *md, struct Depsgraph *depsgraph,
|
ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
@@ -443,5 +511,59 @@ void modwrap_deformVertsEM(
|
|||||||
struct BMEditMesh *em, struct DerivedMesh *dm,
|
struct BMEditMesh *em, struct DerivedMesh *dm,
|
||||||
float (*vertexCos)[3], int numVerts);
|
float (*vertexCos)[3], int numVerts);
|
||||||
|
|
||||||
|
/* wrappers for modifier callbacks that accept Mesh and select the proper implementation
|
||||||
|
* depending on if the modifier has been ported to Mesh or is still using DerivedMesh
|
||||||
|
*/
|
||||||
|
|
||||||
|
void modifier_deformVerts(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], int numVerts,
|
||||||
|
ModifierApplyFlag flag);
|
||||||
|
|
||||||
|
void modifier_deformMatrices(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts);
|
||||||
|
|
||||||
|
void modifier_deformVertsEM(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData, struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], int numVerts);
|
||||||
|
|
||||||
|
void modifier_deformMatricesEM(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData, struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts);
|
||||||
|
|
||||||
|
struct Mesh *modifier_applyModifier(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct Mesh *mesh, ModifierApplyFlag flag);
|
||||||
|
|
||||||
|
struct Mesh *modifier_applyModifierEM(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData,
|
||||||
|
struct Mesh *mesh, ModifierApplyFlag flag);
|
||||||
|
|
||||||
|
/* depricated variants of above that accept DerivedMesh */
|
||||||
|
|
||||||
|
void modifier_deformVerts_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct DerivedMesh *dm,
|
||||||
|
float (*vertexCos)[3], int numVerts,
|
||||||
|
ModifierApplyFlag flag);
|
||||||
|
|
||||||
|
void modifier_deformMatrices_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct DerivedMesh *dm,
|
||||||
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts);
|
||||||
|
|
||||||
|
void modifier_deformVertsEM_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData, struct DerivedMesh *dm,
|
||||||
|
float (*vertexCos)[3], int numVerts);
|
||||||
|
|
||||||
|
void modifier_deformMatricesEM_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData, struct DerivedMesh *dm,
|
||||||
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts);
|
||||||
|
|
||||||
|
struct DerivedMesh *modifier_applyModifier_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct DerivedMesh *dm, ModifierApplyFlag flag);
|
||||||
|
|
||||||
|
struct DerivedMesh *modifier_applyModifierEM_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData,
|
||||||
|
struct DerivedMesh *dm, ModifierApplyFlag flag);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@@ -2356,7 +2356,7 @@ static void editbmesh_calc_modifiers(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mti->deformVertsEM)
|
if (mti->deformVertsEM || mti->deformVertsEM_DM)
|
||||||
modwrap_deformVertsEM(md, depsgraph, ob, em, dm, deformedVerts, numVerts);
|
modwrap_deformVertsEM(md, depsgraph, ob, em, dm, deformedVerts, numVerts);
|
||||||
else
|
else
|
||||||
modwrap_deformVerts(md, depsgraph, ob, dm, deformedVerts, numVerts, 0);
|
modwrap_deformVerts(md, depsgraph, ob, dm, deformedVerts, numVerts, 0);
|
||||||
@@ -2403,7 +2403,7 @@ static void editbmesh_calc_modifiers(
|
|||||||
mask &= ~CD_MASK_ORCO;
|
mask &= ~CD_MASK_ORCO;
|
||||||
DM_set_only_copy(orcodm, mask | CD_MASK_ORIGINDEX);
|
DM_set_only_copy(orcodm, mask | CD_MASK_ORIGINDEX);
|
||||||
|
|
||||||
if (mti->applyModifierEM) {
|
if (mti->applyModifierEM || mti->applyModifierEM_DM) {
|
||||||
ndm = modwrap_applyModifierEM(md, depsgraph, ob, em, orcodm, MOD_APPLY_ORCO);
|
ndm = modwrap_applyModifierEM(md, depsgraph, ob, em, orcodm, MOD_APPLY_ORCO);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -2431,7 +2431,7 @@ static void editbmesh_calc_modifiers(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mti->applyModifierEM)
|
if (mti->applyModifierEM || mti->applyModifierEM_DM)
|
||||||
ndm = modwrap_applyModifierEM(md, depsgraph, ob, em, dm, MOD_APPLY_USECACHE | MOD_APPLY_ALLOW_GPU);
|
ndm = modwrap_applyModifierEM(md, depsgraph, ob, em, dm, MOD_APPLY_USECACHE | MOD_APPLY_ALLOW_GPU);
|
||||||
else
|
else
|
||||||
ndm = modwrap_applyModifier(md, depsgraph, ob, dm, MOD_APPLY_USECACHE | MOD_APPLY_ALLOW_GPU);
|
ndm = modwrap_applyModifier(md, depsgraph, ob, dm, MOD_APPLY_USECACHE | MOD_APPLY_ALLOW_GPU);
|
||||||
|
@@ -276,7 +276,7 @@ int BKE_crazyspace_get_first_deform_matrices_editbmesh(
|
|||||||
if (!editbmesh_modifier_is_enabled(scene, md, dm))
|
if (!editbmesh_modifier_is_enabled(scene, md, dm))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (mti->type == eModifierTypeType_OnlyDeform && mti->deformMatricesEM) {
|
if (mti->type == eModifierTypeType_OnlyDeform && (mti->deformMatricesEM || mti->deformMatricesEM_DM)) {
|
||||||
if (!defmats) {
|
if (!defmats) {
|
||||||
const int required_mode = eModifierMode_Realtime | eModifierMode_Editmode;
|
const int required_mode = eModifierMode_Realtime | eModifierMode_Editmode;
|
||||||
CustomDataMask data_mask = CD_MASK_BAREMESH;
|
CustomDataMask data_mask = CD_MASK_BAREMESH;
|
||||||
@@ -292,8 +292,7 @@ int BKE_crazyspace_get_first_deform_matrices_editbmesh(
|
|||||||
unit_m3(defmats[a]);
|
unit_m3(defmats[a]);
|
||||||
}
|
}
|
||||||
|
|
||||||
mti->deformMatricesEM(md, depsgraph, ob, em, dm, deformedVerts, defmats,
|
modifier_deformMatricesEM_DM_deprecated(md, depsgraph, ob, em, dm, deformedVerts, defmats, numVerts);
|
||||||
numVerts);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
break;
|
break;
|
||||||
@@ -350,7 +349,9 @@ int BKE_sculpt_get_first_deform_matrices(
|
|||||||
unit_m3(defmats[a]);
|
unit_m3(defmats[a]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mti->deformMatrices) mti->deformMatrices(md, depsgraph, ob, dm, deformedVerts, defmats, numVerts);
|
if (mti->deformMatrices || mti->deformMatrices_DM) {
|
||||||
|
modifier_deformMatrices_DM_deprecated(md, depsgraph, ob, dm, deformedVerts, defmats, numVerts);
|
||||||
|
}
|
||||||
else break;
|
else break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -397,10 +398,10 @@ void BKE_crazyspace_build_sculpt(struct Depsgraph *depsgraph, Scene *scene, Obje
|
|||||||
if (mti->type == eModifierTypeType_OnlyDeform) {
|
if (mti->type == eModifierTypeType_OnlyDeform) {
|
||||||
/* skip leading modifiers which have been already
|
/* skip leading modifiers which have been already
|
||||||
* handled in sculpt_get_first_deform_matrices */
|
* handled in sculpt_get_first_deform_matrices */
|
||||||
if (mti->deformMatrices && !deformed)
|
if ((mti->deformMatrices || mti->deformMatrices_DM) && !deformed)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
mti->deformVerts(md, depsgraph, ob, NULL, deformedVerts, me->totvert, 0);
|
modifier_deformVerts_DM_deprecated(md, depsgraph, ob, NULL, deformedVerts, me->totvert, 0);
|
||||||
deformed = 1;
|
deformed = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -860,7 +860,7 @@ static void curve_calc_modifiers_pre(
|
|||||||
deformedVerts = BKE_curve_nurbs_vertexCos_get(nurb, &numVerts);
|
deformedVerts = BKE_curve_nurbs_vertexCos_get(nurb, &numVerts);
|
||||||
}
|
}
|
||||||
|
|
||||||
mti->deformVerts(md, depsgraph, ob, NULL, deformedVerts, numVerts, app_flag);
|
modifier_deformVerts_DM_deprecated(md, depsgraph, ob, NULL, deformedVerts, numVerts, app_flag);
|
||||||
|
|
||||||
if (md == pretessellatePoint)
|
if (md == pretessellatePoint)
|
||||||
break;
|
break;
|
||||||
@@ -969,14 +969,14 @@ static void curve_calc_modifiers_post(
|
|||||||
dm->getVertCos(dm, vertCos);
|
dm->getVertCos(dm, vertCos);
|
||||||
}
|
}
|
||||||
|
|
||||||
mti->deformVerts(md, depsgraph, ob, dm, vertCos, totvert, appf);
|
modifier_deformVerts_DM_deprecated(md, depsgraph, ob, dm, vertCos, totvert, appf);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (!vertCos) {
|
if (!vertCos) {
|
||||||
vertCos = displist_get_allverts(dispbase, &totvert);
|
vertCos = displist_get_allverts(dispbase, &totvert);
|
||||||
}
|
}
|
||||||
|
|
||||||
mti->deformVerts(md, depsgraph, ob, NULL, vertCos, totvert, appf);
|
modifier_deformVerts_DM_deprecated(md, depsgraph, ob, NULL, vertCos, totvert, appf);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@@ -1053,7 +1053,7 @@ void BKE_lattice_modifiers_calc(struct Depsgraph *depsgraph, Scene *scene, Objec
|
|||||||
if (mti->type != eModifierTypeType_OnlyDeform) continue;
|
if (mti->type != eModifierTypeType_OnlyDeform) continue;
|
||||||
|
|
||||||
if (!vertexCos) vertexCos = BKE_lattice_vertexcos_get(ob, &numVerts);
|
if (!vertexCos) vertexCos = BKE_lattice_vertexcos_get(ob, &numVerts);
|
||||||
mti->deformVerts(md, depsgraph, ob, NULL, vertexCos, numVerts, 0);
|
modifier_deformVerts_DM_deprecated(md, depsgraph, ob, NULL, vertexCos, numVerts, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* always displist to make this work like derivedmesh */
|
/* always displist to make this work like derivedmesh */
|
||||||
|
@@ -46,6 +46,7 @@
|
|||||||
#include "MEM_guardedalloc.h"
|
#include "MEM_guardedalloc.h"
|
||||||
|
|
||||||
#include "DNA_armature_types.h"
|
#include "DNA_armature_types.h"
|
||||||
|
#include "DNA_mesh_types.h"
|
||||||
#include "DNA_object_types.h"
|
#include "DNA_object_types.h"
|
||||||
|
|
||||||
#include "BLI_utildefines.h"
|
#include "BLI_utildefines.h"
|
||||||
@@ -58,9 +59,11 @@
|
|||||||
#include "BLT_translation.h"
|
#include "BLT_translation.h"
|
||||||
|
|
||||||
#include "BKE_appdir.h"
|
#include "BKE_appdir.h"
|
||||||
|
#include "BKE_cdderivedmesh.h"
|
||||||
#include "BKE_key.h"
|
#include "BKE_key.h"
|
||||||
#include "BKE_library.h"
|
#include "BKE_library.h"
|
||||||
#include "BKE_library_query.h"
|
#include "BKE_library_query.h"
|
||||||
|
#include "BKE_mesh.h"
|
||||||
#include "BKE_multires.h"
|
#include "BKE_multires.h"
|
||||||
#include "BKE_DerivedMesh.h"
|
#include "BKE_DerivedMesh.h"
|
||||||
|
|
||||||
@@ -681,7 +684,7 @@ bool modifiers_usesArmature(Object *ob, bArmature *arm)
|
|||||||
bool modifier_isCorrectableDeformed(ModifierData *md)
|
bool modifier_isCorrectableDeformed(ModifierData *md)
|
||||||
{
|
{
|
||||||
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
return (mti->deformMatricesEM != NULL);
|
return (mti->deformMatricesEM != NULL) || (mti->deformMatricesEM_DM != NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool modifiers_isCorrectableDeformed(struct Scene *scene, Object *ob)
|
bool modifiers_isCorrectableDeformed(struct Scene *scene, Object *ob)
|
||||||
@@ -796,7 +799,7 @@ struct DerivedMesh *modwrap_applyModifier(
|
|||||||
if (mti->dependsOnNormals && mti->dependsOnNormals(md)) {
|
if (mti->dependsOnNormals && mti->dependsOnNormals(md)) {
|
||||||
DM_ensure_normals(dm);
|
DM_ensure_normals(dm);
|
||||||
}
|
}
|
||||||
return mti->applyModifier(md, depsgraph, ob, dm, flag);
|
return modifier_applyModifier_DM_deprecated(md, depsgraph, ob, dm, flag);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct DerivedMesh *modwrap_applyModifierEM(
|
struct DerivedMesh *modwrap_applyModifierEM(
|
||||||
@@ -811,7 +814,7 @@ struct DerivedMesh *modwrap_applyModifierEM(
|
|||||||
if (mti->dependsOnNormals && mti->dependsOnNormals(md)) {
|
if (mti->dependsOnNormals && mti->dependsOnNormals(md)) {
|
||||||
DM_ensure_normals(dm);
|
DM_ensure_normals(dm);
|
||||||
}
|
}
|
||||||
return mti->applyModifierEM(md, depsgraph, ob, em, dm, flag);
|
return modifier_applyModifierEM_DM_deprecated(md, depsgraph, ob, em, dm, flag);
|
||||||
}
|
}
|
||||||
|
|
||||||
void modwrap_deformVerts(
|
void modwrap_deformVerts(
|
||||||
@@ -826,7 +829,7 @@ void modwrap_deformVerts(
|
|||||||
if (dm && mti->dependsOnNormals && mti->dependsOnNormals(md)) {
|
if (dm && mti->dependsOnNormals && mti->dependsOnNormals(md)) {
|
||||||
DM_ensure_normals(dm);
|
DM_ensure_normals(dm);
|
||||||
}
|
}
|
||||||
mti->deformVerts(md, depsgraph, ob, dm, vertexCos, numVerts, flag);
|
modifier_deformVerts_DM_deprecated(md, depsgraph, ob, dm, vertexCos, numVerts, flag);
|
||||||
}
|
}
|
||||||
|
|
||||||
void modwrap_deformVertsEM(
|
void modwrap_deformVertsEM(
|
||||||
@@ -840,6 +843,277 @@ void modwrap_deformVertsEM(
|
|||||||
if (dm && mti->dependsOnNormals && mti->dependsOnNormals(md)) {
|
if (dm && mti->dependsOnNormals && mti->dependsOnNormals(md)) {
|
||||||
DM_ensure_normals(dm);
|
DM_ensure_normals(dm);
|
||||||
}
|
}
|
||||||
mti->deformVertsEM(md, depsgraph, ob, em, dm, vertexCos, numVerts);
|
modifier_deformVertsEM_DM_deprecated(md, depsgraph, ob, em, dm, vertexCos, numVerts);
|
||||||
}
|
}
|
||||||
/* end modifier callback wrappers */
|
/* end modifier callback wrappers */
|
||||||
|
|
||||||
|
|
||||||
|
/* wrappers for modifier callbacks that accept Mesh and select the proper implementation
|
||||||
|
* depending on if the modifier has been ported to Mesh or is still using DerivedMesh
|
||||||
|
*/
|
||||||
|
|
||||||
|
void modifier_deformVerts(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], int numVerts,
|
||||||
|
ModifierApplyFlag flag)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->deformVerts) {
|
||||||
|
mti->deformVerts(md, depsgraph, ob, mesh, vertexCos, numVerts, flag);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
DerivedMesh *dm = CDDM_from_mesh(mesh);
|
||||||
|
|
||||||
|
mti->deformVerts_DM(md, depsgraph, ob, dm, vertexCos, numVerts, flag);
|
||||||
|
|
||||||
|
dm->release(dm);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void modifier_deformMatrices(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->deformMatrices) {
|
||||||
|
mti->deformMatrices(md, depsgraph, ob, mesh, vertexCos, defMats, numVerts);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
DerivedMesh *dm = CDDM_from_mesh(mesh);
|
||||||
|
|
||||||
|
mti->deformMatrices_DM(md, depsgraph, ob, dm, vertexCos, defMats, numVerts);
|
||||||
|
|
||||||
|
dm->release(dm);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void modifier_deformVertsEM(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData, struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], int numVerts)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->deformVertsEM) {
|
||||||
|
mti->deformVertsEM(md, depsgraph, ob, editData, mesh, vertexCos, numVerts);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
DerivedMesh *dm = CDDM_from_mesh(mesh);
|
||||||
|
|
||||||
|
mti->deformVertsEM_DM(md, depsgraph, ob, editData, dm, vertexCos, numVerts);
|
||||||
|
|
||||||
|
dm->release(dm);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void modifier_deformMatricesEM(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData, struct Mesh *mesh,
|
||||||
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->deformMatricesEM) {
|
||||||
|
mti->deformMatricesEM(md, depsgraph, ob, editData, mesh, vertexCos, defMats, numVerts);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
DerivedMesh *dm = CDDM_from_mesh(mesh);
|
||||||
|
|
||||||
|
mti->deformMatricesEM_DM(md, depsgraph, ob, editData, dm, vertexCos, defMats, numVerts);
|
||||||
|
|
||||||
|
dm->release(dm);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
struct Mesh *modifier_applyModifier(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct Mesh *mesh, ModifierApplyFlag flag)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->applyModifier) {
|
||||||
|
return mti->applyModifier(md, depsgraph, ob, mesh, flag);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
DerivedMesh *dm = CDDM_from_mesh(mesh);
|
||||||
|
|
||||||
|
DerivedMesh *ndm = mti->applyModifier_DM(md, depsgraph, ob, dm, flag);
|
||||||
|
|
||||||
|
if(ndm != dm) {
|
||||||
|
dm->release(dm);
|
||||||
|
}
|
||||||
|
|
||||||
|
DM_to_mesh(ndm, mesh, ob, CD_MASK_EVERYTHING, true);
|
||||||
|
|
||||||
|
return mesh;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
struct Mesh *modifier_applyModifierEM(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData,
|
||||||
|
struct Mesh *mesh, ModifierApplyFlag flag)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->applyModifierEM) {
|
||||||
|
return mti->applyModifierEM(md, depsgraph, ob, editData, mesh, flag);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
DerivedMesh *dm = CDDM_from_mesh(mesh);
|
||||||
|
|
||||||
|
DerivedMesh *ndm = mti->applyModifierEM_DM(md, depsgraph, ob, editData, dm, flag);
|
||||||
|
|
||||||
|
if(ndm != dm) {
|
||||||
|
dm->release(dm);
|
||||||
|
}
|
||||||
|
|
||||||
|
DM_to_mesh(ndm, mesh, ob, CD_MASK_EVERYTHING, true);
|
||||||
|
|
||||||
|
return mesh;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* depricated variants of above that accept DerivedMesh */
|
||||||
|
|
||||||
|
void modifier_deformVerts_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct DerivedMesh *dm,
|
||||||
|
float (*vertexCos)[3], int numVerts,
|
||||||
|
ModifierApplyFlag flag)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->deformVerts_DM) {
|
||||||
|
mti->deformVerts_DM(md, depsgraph, ob, dm, vertexCos, numVerts, flag);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
struct Mesh mesh;
|
||||||
|
BKE_mesh_init(&mesh);
|
||||||
|
|
||||||
|
DM_to_mesh(dm, &mesh, ob, CD_MASK_EVERYTHING, false);
|
||||||
|
|
||||||
|
mti->deformVerts(md, depsgraph, ob, &mesh, vertexCos, numVerts, flag);
|
||||||
|
|
||||||
|
BKE_mesh_free(&mesh);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void modifier_deformMatrices_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct DerivedMesh *dm,
|
||||||
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts)
|
||||||
|
{
|
||||||
|
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->deformMatrices_DM) {
|
||||||
|
mti->deformMatrices_DM(md, depsgraph, ob, dm, vertexCos, defMats, numVerts);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
struct Mesh mesh;
|
||||||
|
BKE_mesh_init(&mesh);
|
||||||
|
|
||||||
|
DM_to_mesh(dm, &mesh, ob, CD_MASK_EVERYTHING, false);
|
||||||
|
|
||||||
|
mti->deformMatrices(md, depsgraph, ob, &mesh, vertexCos, defMats, numVerts);
|
||||||
|
|
||||||
|
BKE_mesh_free(&mesh);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void modifier_deformVertsEM_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData, struct DerivedMesh *dm,
|
||||||
|
float (*vertexCos)[3], int numVerts)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->deformVertsEM_DM) {
|
||||||
|
mti->deformVertsEM_DM(md, depsgraph, ob, editData, dm, vertexCos, numVerts);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
struct Mesh mesh;
|
||||||
|
BKE_mesh_init(&mesh);
|
||||||
|
|
||||||
|
DM_to_mesh(dm, &mesh, ob, CD_MASK_EVERYTHING, false);
|
||||||
|
|
||||||
|
mti->deformVertsEM(md, depsgraph, ob, editData, &mesh, vertexCos, numVerts);
|
||||||
|
|
||||||
|
BKE_mesh_free(&mesh);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void modifier_deformMatricesEM_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData, struct DerivedMesh *dm,
|
||||||
|
float (*vertexCos)[3], float (*defMats)[3][3], int numVerts)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->deformMatricesEM_DM) {
|
||||||
|
mti->deformMatricesEM_DM(md, depsgraph, ob, editData, dm, vertexCos, defMats, numVerts);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
struct Mesh mesh;
|
||||||
|
BKE_mesh_init(&mesh);
|
||||||
|
|
||||||
|
DM_to_mesh(dm, &mesh, ob, CD_MASK_EVERYTHING, false);
|
||||||
|
|
||||||
|
mti->deformMatricesEM(md, depsgraph, ob, editData, &mesh, vertexCos, defMats, numVerts);
|
||||||
|
|
||||||
|
BKE_mesh_free(&mesh);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
struct DerivedMesh *modifier_applyModifier_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct DerivedMesh *dm, ModifierApplyFlag flag)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->applyModifier_DM) {
|
||||||
|
return mti->applyModifier_DM(md, depsgraph, ob, dm, flag);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
struct Mesh mesh;
|
||||||
|
BKE_mesh_init(&mesh);
|
||||||
|
|
||||||
|
DM_to_mesh(dm, &mesh, ob, CD_MASK_EVERYTHING, false);
|
||||||
|
|
||||||
|
struct Mesh *new_mesh = mti->applyModifier(md, depsgraph, ob, &mesh, flag);
|
||||||
|
|
||||||
|
DerivedMesh *ndm = CDDM_from_mesh(new_mesh);
|
||||||
|
|
||||||
|
if(new_mesh != &mesh) {
|
||||||
|
BKE_mesh_free(&mesh);
|
||||||
|
|
||||||
|
/* XXX free new_mesh? */
|
||||||
|
}
|
||||||
|
|
||||||
|
return ndm;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
struct DerivedMesh *modifier_applyModifierEM_DM_deprecated(struct ModifierData *md, struct Depsgraph *depsgraph,
|
||||||
|
struct Object *ob, struct BMEditMesh *editData,
|
||||||
|
struct DerivedMesh *dm, ModifierApplyFlag flag)
|
||||||
|
{
|
||||||
|
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
||||||
|
|
||||||
|
if (mti->applyModifierEM) {
|
||||||
|
return mti->applyModifierEM_DM(md, depsgraph, ob, editData, dm, flag);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
struct Mesh mesh;
|
||||||
|
BKE_mesh_init(&mesh);
|
||||||
|
|
||||||
|
DM_to_mesh(dm, &mesh, ob, CD_MASK_EVERYTHING, false);
|
||||||
|
|
||||||
|
struct Mesh *new_mesh = mti->applyModifierEM(md, depsgraph, ob, editData, &mesh, flag);
|
||||||
|
|
||||||
|
DerivedMesh *ndm = CDDM_from_mesh(new_mesh);
|
||||||
|
|
||||||
|
if(new_mesh != &mesh) {
|
||||||
|
BKE_mesh_free(&mesh);
|
||||||
|
|
||||||
|
/* XXX free new_mesh? */
|
||||||
|
}
|
||||||
|
|
||||||
|
return ndm;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -280,11 +280,10 @@ static MDisps *multires_mdisps_initialize_hidden(Mesh *me, int level)
|
|||||||
DerivedMesh *get_multires_dm(struct Depsgraph *depsgraph, Scene *scene, MultiresModifierData *mmd, Object *ob)
|
DerivedMesh *get_multires_dm(struct Depsgraph *depsgraph, Scene *scene, MultiresModifierData *mmd, Object *ob)
|
||||||
{
|
{
|
||||||
ModifierData *md = (ModifierData *)mmd;
|
ModifierData *md = (ModifierData *)mmd;
|
||||||
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
|
||||||
DerivedMesh *tdm = mesh_get_derived_deform(depsgraph, scene, ob, CD_MASK_BAREMESH);
|
DerivedMesh *tdm = mesh_get_derived_deform(depsgraph, scene, ob, CD_MASK_BAREMESH);
|
||||||
DerivedMesh *dm;
|
DerivedMesh *dm;
|
||||||
|
|
||||||
dm = mti->applyModifier(md, depsgraph, ob, tdm, MOD_APPLY_USECACHE | MOD_APPLY_IGNORE_SIMPLIFY);
|
dm = modifier_applyModifier_DM_deprecated(md, depsgraph, ob, tdm, MOD_APPLY_USECACHE | MOD_APPLY_IGNORE_SIMPLIFY);
|
||||||
if (dm == tdm) {
|
if (dm == tdm) {
|
||||||
dm = CDDM_copy(tdm);
|
dm = CDDM_copy(tdm);
|
||||||
}
|
}
|
||||||
@@ -429,7 +428,6 @@ int multiresModifier_reshape(struct Depsgraph *depsgraph, Scene *scene, Multires
|
|||||||
int multiresModifier_reshapeFromDeformMod(struct Depsgraph *depsgraph, Scene *scene, MultiresModifierData *mmd,
|
int multiresModifier_reshapeFromDeformMod(struct Depsgraph *depsgraph, Scene *scene, MultiresModifierData *mmd,
|
||||||
Object *ob, ModifierData *md)
|
Object *ob, ModifierData *md)
|
||||||
{
|
{
|
||||||
const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
|
|
||||||
DerivedMesh *dm, *ndm;
|
DerivedMesh *dm, *ndm;
|
||||||
int numVerts, result;
|
int numVerts, result;
|
||||||
float (*deformedVerts)[3];
|
float (*deformedVerts)[3];
|
||||||
@@ -443,7 +441,7 @@ int multiresModifier_reshapeFromDeformMod(struct Depsgraph *depsgraph, Scene *sc
|
|||||||
deformedVerts = MEM_malloc_arrayN(numVerts, sizeof(float[3]), "multiresReshape_deformVerts");
|
deformedVerts = MEM_malloc_arrayN(numVerts, sizeof(float[3]), "multiresReshape_deformVerts");
|
||||||
|
|
||||||
dm->getVertCos(dm, deformedVerts);
|
dm->getVertCos(dm, deformedVerts);
|
||||||
mti->deformVerts(md, depsgraph, ob, dm, deformedVerts, numVerts, 0);
|
modifier_deformVerts_DM_deprecated(md, depsgraph, ob, dm, deformedVerts, numVerts, 0);
|
||||||
|
|
||||||
ndm = CDDM_copy(dm);
|
ndm = CDDM_copy(dm);
|
||||||
CDDM_apply_vert_coords(ndm, deformedVerts);
|
CDDM_apply_vert_coords(ndm, deformedVerts);
|
||||||
|
@@ -641,7 +641,7 @@ static int modifier_apply_obdata(ReportList *reports, Depsgraph *depsgraph, Scen
|
|||||||
BKE_report(reports, RPT_INFO, "Applied modifier only changed CV points, not tessellated/bevel vertices");
|
BKE_report(reports, RPT_INFO, "Applied modifier only changed CV points, not tessellated/bevel vertices");
|
||||||
|
|
||||||
vertexCos = BKE_curve_nurbs_vertexCos_get(&cu->nurb, &numVerts);
|
vertexCos = BKE_curve_nurbs_vertexCos_get(&cu->nurb, &numVerts);
|
||||||
mti->deformVerts(md, depsgraph, ob, NULL, vertexCos, numVerts, 0);
|
modifier_deformVerts_DM_deprecated(md, depsgraph, ob, NULL, vertexCos, numVerts, 0);
|
||||||
BK_curve_nurbs_vertexCos_apply(&cu->nurb, vertexCos);
|
BK_curve_nurbs_vertexCos_apply(&cu->nurb, vertexCos);
|
||||||
|
|
||||||
MEM_freeN(vertexCos);
|
MEM_freeN(vertexCos);
|
||||||
|
@@ -189,12 +189,21 @@ ModifierTypeInfo modifierType_Armature = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
/* deformMatrices */ deformMatrices,
|
/* deformVerts_DM */ deformVerts,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformMatrices_DM */ deformMatrices,
|
||||||
/* deformMatricesEM */ deformMatricesEM,
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/deformMatricesEM,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
|
/* deformMatrices */ NULL,
|
||||||
|
/* deformVertsEM */ NULL,
|
||||||
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -777,12 +777,21 @@ ModifierTypeInfo modifierType_Array = {
|
|||||||
eModifierTypeFlag_AcceptsCVs,
|
eModifierTypeFlag_AcceptsCVs,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -195,12 +195,21 @@ ModifierTypeInfo modifierType_Bevel = {
|
|||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -353,12 +353,21 @@ ModifierTypeInfo modifierType_Boolean = {
|
|||||||
eModifierTypeFlag_UsesPointCache,
|
eModifierTypeFlag_UsesPointCache,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -314,12 +314,21 @@ ModifierTypeInfo modifierType_Build = {
|
|||||||
/* flags */ eModifierTypeFlag_AcceptsMesh |
|
/* flags */ eModifierTypeFlag_AcceptsMesh |
|
||||||
eModifierTypeFlag_AcceptsCVs,
|
eModifierTypeFlag_AcceptsCVs,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -481,12 +481,21 @@ ModifierTypeInfo modifierType_Cast = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -225,12 +225,21 @@ ModifierTypeInfo modifierType_Cloth = {
|
|||||||
eModifierTypeFlag_Single,
|
eModifierTypeFlag_Single,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -254,12 +254,21 @@ ModifierTypeInfo modifierType_Collision = {
|
|||||||
eModifierTypeFlag_Single,
|
eModifierTypeFlag_Single,
|
||||||
|
|
||||||
/* copyData */ NULL,
|
/* copyData */ NULL,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -749,12 +749,21 @@ ModifierTypeInfo modifierType_CorrectiveSmooth = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -149,12 +149,21 @@ ModifierTypeInfo modifierType_Curve = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -222,12 +222,21 @@ ModifierTypeInfo modifierType_DataTransfer = {
|
|||||||
eModifierTypeFlag_UsesPreview,
|
eModifierTypeFlag_UsesPreview,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -217,12 +217,21 @@ ModifierTypeInfo modifierType_Decimate = {
|
|||||||
/* flags */ eModifierTypeFlag_AcceptsMesh |
|
/* flags */ eModifierTypeFlag_AcceptsMesh |
|
||||||
eModifierTypeFlag_AcceptsCVs,
|
eModifierTypeFlag_AcceptsCVs,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -406,12 +406,21 @@ ModifierTypeInfo modifierType_Displace = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -180,12 +180,21 @@ ModifierTypeInfo modifierType_DynamicPaint = {
|
|||||||
eModifierTypeFlag_UsesPreview,
|
eModifierTypeFlag_UsesPreview,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -149,12 +149,21 @@ ModifierTypeInfo modifierType_EdgeSplit = {
|
|||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -1051,12 +1051,21 @@ ModifierTypeInfo modifierType_Explode = {
|
|||||||
/* type */ eModifierTypeType_Constructive,
|
/* type */ eModifierTypeType_Constructive,
|
||||||
/* flags */ eModifierTypeFlag_AcceptsMesh,
|
/* flags */ eModifierTypeFlag_AcceptsMesh,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -142,12 +142,21 @@ ModifierTypeInfo modifierType_Fluidsim = {
|
|||||||
eModifierTypeFlag_Single,
|
eModifierTypeFlag_Single,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -393,12 +393,21 @@ ModifierTypeInfo modifierType_Hook = {
|
|||||||
eModifierTypeFlag_AcceptsLattice |
|
eModifierTypeFlag_AcceptsLattice |
|
||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -765,12 +765,21 @@ ModifierTypeInfo modifierType_LaplacianDeform = {
|
|||||||
/* type */ eModifierTypeType_OnlyDeform,
|
/* type */ eModifierTypeType_OnlyDeform,
|
||||||
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
|
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -551,12 +551,21 @@ ModifierTypeInfo modifierType_LaplacianSmooth = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copy_data */ copy_data,
|
/* copy_data */ copy_data,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ init_data,
|
/* initData */ init_data,
|
||||||
/* requiredDataMask */ required_data_mask,
|
/* requiredDataMask */ required_data_mask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -137,12 +137,21 @@ ModifierTypeInfo modifierType_Lattice = {
|
|||||||
eModifierTypeFlag_AcceptsLattice |
|
eModifierTypeFlag_AcceptsLattice |
|
||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -370,12 +370,21 @@ ModifierTypeInfo modifierType_Mask = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ NULL,
|
/* initData */ NULL,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -303,12 +303,21 @@ ModifierTypeInfo modifierType_MeshCache = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -512,12 +512,21 @@ ModifierTypeInfo modifierType_MeshDeform = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -179,27 +179,37 @@ static void updateDepsgraph(ModifierData *md, const ModifierUpdateDepsgraphConte
|
|||||||
}
|
}
|
||||||
|
|
||||||
ModifierTypeInfo modifierType_MeshSequenceCache = {
|
ModifierTypeInfo modifierType_MeshSequenceCache = {
|
||||||
/* name */ "Mesh Sequence Cache",
|
/* name */ "Mesh Sequence Cache",
|
||||||
/* structName */ "MeshSeqCacheModifierData",
|
/* structName */ "MeshSeqCacheModifierData",
|
||||||
/* structSize */ sizeof(MeshSeqCacheModifierData),
|
/* structSize */ sizeof(MeshSeqCacheModifierData),
|
||||||
/* type */ eModifierTypeType_Constructive,
|
/* type */ eModifierTypeType_Constructive,
|
||||||
/* flags */ eModifierTypeFlag_AcceptsMesh |
|
/* flags */ eModifierTypeFlag_AcceptsMesh |
|
||||||
eModifierTypeFlag_AcceptsCVs,
|
eModifierTypeFlag_AcceptsCVs,
|
||||||
/* copyData */ copyData,
|
|
||||||
/* deformVerts */ NULL,
|
/* copyData */ copyData,
|
||||||
/* deformMatrices */ NULL,
|
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVerts_DM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatrices_DM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* deformVertsEM_DM */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* deformMatricesEM_DM*/NULL,
|
||||||
/* initData */ initData,
|
/* applyModifier_DM */ applyModifier,
|
||||||
/* requiredDataMask */ NULL,
|
/* applyModifierEM_DM */NULL,
|
||||||
/* freeData */ freeData,
|
|
||||||
/* isDisabled */ isDisabled,
|
/* deformVerts */ NULL,
|
||||||
/* updateDepsgraph */ updateDepsgraph,
|
/* deformMatrices */ NULL,
|
||||||
/* dependsOnTime */ dependsOnTime,
|
/* deformVertsEM */ NULL,
|
||||||
/* dependsOnNormals */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* foreachObjectLink */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* foreachIDLink */ foreachIDLink,
|
/* applyModifierEM */ NULL,
|
||||||
/* foreachTexLink */ NULL,
|
|
||||||
|
/* initData */ initData,
|
||||||
|
/* requiredDataMask */ NULL,
|
||||||
|
/* freeData */ freeData,
|
||||||
|
/* isDisabled */ isDisabled,
|
||||||
|
/* updateDepsgraph */ updateDepsgraph,
|
||||||
|
/* dependsOnTime */ dependsOnTime,
|
||||||
|
/* dependsOnNormals */ NULL,
|
||||||
|
/* foreachObjectLink */ NULL,
|
||||||
|
/* foreachIDLink */ foreachIDLink,
|
||||||
|
/* foreachTexLink */ NULL,
|
||||||
};
|
};
|
||||||
|
@@ -349,12 +349,21 @@ ModifierTypeInfo modifierType_Mirror = {
|
|||||||
eModifierTypeFlag_UsesPreview,
|
eModifierTypeFlag_UsesPreview,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -153,12 +153,21 @@ ModifierTypeInfo modifierType_Multires = {
|
|||||||
eModifierTypeFlag_RequiresOriginalData,
|
eModifierTypeFlag_RequiresOriginalData,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -57,12 +57,21 @@ ModifierTypeInfo modifierType_None = {
|
|||||||
eModifierTypeFlag_AcceptsCVs,
|
eModifierTypeFlag_AcceptsCVs,
|
||||||
|
|
||||||
/* copyData */ NULL,
|
/* copyData */ NULL,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ NULL,
|
/* initData */ NULL,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -533,12 +533,21 @@ ModifierTypeInfo modifierType_NormalEdit = {
|
|||||||
eModifierTypeFlag_SupportsEditmode |
|
eModifierTypeFlag_SupportsEditmode |
|
||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -580,12 +580,21 @@ ModifierTypeInfo modifierType_Ocean = {
|
|||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices_DM */ NULL,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -533,12 +533,21 @@ ModifierTypeInfo modifierType_ParticleInstance = {
|
|||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -221,12 +221,21 @@ ModifierTypeInfo modifierType_ParticleSystem = {
|
|||||||
eModifierTypeFlag_EnableInEditmode */,
|
eModifierTypeFlag_EnableInEditmode */,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -224,12 +224,21 @@ ModifierTypeInfo modifierType_Remesh = {
|
|||||||
eModifierTypeFlag_AcceptsCVs |
|
eModifierTypeFlag_AcceptsCVs |
|
||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -1146,12 +1146,21 @@ ModifierTypeInfo modifierType_Screw = {
|
|||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -128,12 +128,21 @@ ModifierTypeInfo modifierType_ShapeKey = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ NULL,
|
/* copyData */ NULL,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
/* deformMatrices */ deformMatrices,
|
/* deformVerts_DM */ deformVerts,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformMatrices_DM */ deformMatrices,
|
||||||
/* deformMatricesEM */ deformMatricesEM,
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/deformMatricesEM,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
|
/* deformMatrices */ NULL,
|
||||||
|
/* deformVertsEM */ NULL,
|
||||||
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ NULL,
|
/* initData */ NULL,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -177,12 +177,21 @@ ModifierTypeInfo modifierType_Shrinkwrap = {
|
|||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -437,12 +437,21 @@ ModifierTypeInfo modifierType_SimpleDeform = {
|
|||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -1943,12 +1943,21 @@ ModifierTypeInfo modifierType_Skin = {
|
|||||||
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
|
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -174,12 +174,21 @@ ModifierTypeInfo modifierType_Smoke = {
|
|||||||
eModifierTypeFlag_Single,
|
eModifierTypeFlag_Single,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -251,12 +251,21 @@ ModifierTypeInfo modifierType_Smooth = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -84,12 +84,21 @@ ModifierTypeInfo modifierType_Softbody = {
|
|||||||
eModifierTypeFlag_Single,
|
eModifierTypeFlag_Single,
|
||||||
|
|
||||||
/* copyData */ NULL,
|
/* copyData */ NULL,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ NULL,
|
/* initData */ NULL,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -963,12 +963,21 @@ ModifierTypeInfo modifierType_Solidify = {
|
|||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -209,12 +209,21 @@ ModifierTypeInfo modifierType_Subsurf = {
|
|||||||
eModifierTypeFlag_AcceptsCVs,
|
eModifierTypeFlag_AcceptsCVs,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */applyModifierEM,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ applyModifierEM,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -176,12 +176,21 @@ ModifierTypeInfo modifierType_Surface = {
|
|||||||
eModifierTypeFlag_NoUserAdd,
|
eModifierTypeFlag_NoUserAdd,
|
||||||
|
|
||||||
/* copyData */ NULL,
|
/* copyData */ NULL,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -1214,12 +1214,21 @@ ModifierTypeInfo modifierType_SurfaceDeform = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL,
|
/* requiredDataMask */ NULL,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -111,12 +111,21 @@ ModifierTypeInfo modifierType_Triangulate = {
|
|||||||
eModifierTypeFlag_AcceptsCVs,
|
eModifierTypeFlag_AcceptsCVs,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ NULL, //requiredDataMask,
|
/* requiredDataMask */ NULL, //requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -340,12 +340,21 @@ ModifierTypeInfo modifierType_UVProject = {
|
|||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -261,12 +261,21 @@ ModifierTypeInfo modifierType_UVWarp = {
|
|||||||
eModifierTypeFlag_SupportsEditmode |
|
eModifierTypeFlag_SupportsEditmode |
|
||||||
eModifierTypeFlag_EnableInEditmode,
|
eModifierTypeFlag_EnableInEditmode,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -354,12 +354,21 @@ ModifierTypeInfo modifierType_Warp = {
|
|||||||
eModifierTypeFlag_AcceptsLattice |
|
eModifierTypeFlag_AcceptsLattice |
|
||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -351,12 +351,21 @@ ModifierTypeInfo modifierType_Wave = {
|
|||||||
eModifierTypeFlag_AcceptsLattice |
|
eModifierTypeFlag_AcceptsLattice |
|
||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
/* deformVerts */ deformVerts,
|
|
||||||
|
/* deformVerts_DM */ deformVerts,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ deformVertsEM,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ NULL,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ deformVertsEM,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ NULL,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -268,12 +268,21 @@ ModifierTypeInfo modifierType_WeightVGEdit = {
|
|||||||
eModifierTypeFlag_UsesPreview,
|
eModifierTypeFlag_UsesPreview,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ freeData,
|
/* freeData */ freeData,
|
||||||
|
@@ -393,12 +393,21 @@ ModifierTypeInfo modifierType_WeightVGMix = {
|
|||||||
eModifierTypeFlag_UsesPreview,
|
eModifierTypeFlag_UsesPreview,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -576,12 +576,21 @@ ModifierTypeInfo modifierType_WeightVGProximity = {
|
|||||||
eModifierTypeFlag_UsesPreview,
|
eModifierTypeFlag_UsesPreview,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
@@ -118,12 +118,21 @@ ModifierTypeInfo modifierType_Wireframe = {
|
|||||||
eModifierTypeFlag_SupportsEditmode,
|
eModifierTypeFlag_SupportsEditmode,
|
||||||
|
|
||||||
/* copyData */ copyData,
|
/* copyData */ copyData,
|
||||||
|
|
||||||
|
/* deformVerts_DM */ NULL,
|
||||||
|
/* deformMatrices_DM */ NULL,
|
||||||
|
/* deformVertsEM_DM */ NULL,
|
||||||
|
/* deformMatricesEM_DM*/NULL,
|
||||||
|
/* applyModifier_DM */ applyModifier,
|
||||||
|
/* applyModifierEM_DM */NULL,
|
||||||
|
|
||||||
/* deformVerts */ NULL,
|
/* deformVerts */ NULL,
|
||||||
/* deformMatrices */ NULL,
|
/* deformMatrices */ NULL,
|
||||||
/* deformVertsEM */ NULL,
|
/* deformVertsEM */ NULL,
|
||||||
/* deformMatricesEM */ NULL,
|
/* deformMatricesEM */ NULL,
|
||||||
/* applyModifier */ applyModifier,
|
/* applyModifier */ NULL,
|
||||||
/* applyModifierEM */ NULL,
|
/* applyModifierEM */ NULL,
|
||||||
|
|
||||||
/* initData */ initData,
|
/* initData */ initData,
|
||||||
/* requiredDataMask */ requiredDataMask,
|
/* requiredDataMask */ requiredDataMask,
|
||||||
/* freeData */ NULL,
|
/* freeData */ NULL,
|
||||||
|
Reference in New Issue
Block a user