svn merge -r39286:39385 https://svn.blender.org/svnroot/bf-blender/trunk/blender
This commit is contained in:
@@ -213,4 +213,5 @@ ModifierTypeInfo modifierType_Armature = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -563,4 +563,5 @@ ModifierTypeInfo modifierType_Array = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -153,4 +153,5 @@ ModifierTypeInfo modifierType_Bevel = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -197,4 +197,5 @@ ModifierTypeInfo modifierType_Boolean = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -328,5 +328,6 @@ ModifierTypeInfo modifierType_Build = {
|
||||
/* dependsOnTime */ dependsOnTime,
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -632,4 +632,5 @@ ModifierTypeInfo modifierType_Cast = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -229,4 +229,5 @@ ModifierTypeInfo modifierType_Cloth = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -267,4 +267,5 @@ ModifierTypeInfo modifierType_Collision = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -162,4 +162,5 @@ ModifierTypeInfo modifierType_Curve = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -222,4 +222,5 @@ ModifierTypeInfo modifierType_Decimate = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -134,6 +134,12 @@ static void foreachIDLink(ModifierData *md, Object *ob,
|
||||
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
||||
}
|
||||
|
||||
static void foreachTexLink(ModifierData *md, Object *ob,
|
||||
TexWalkFunc walk, void *userData)
|
||||
{
|
||||
walk(userData, ob, md, "texture");
|
||||
}
|
||||
|
||||
static int isDisabled(ModifierData *md, int UNUSED(useRenderParams))
|
||||
{
|
||||
DisplaceModifierData *dmd = (DisplaceModifierData*) md;
|
||||
@@ -284,4 +290,5 @@ ModifierTypeInfo modifierType_Displace = {
|
||||
/* dependsOnNormals */ dependsOnNormals,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ foreachTexLink,
|
||||
};
|
||||
|
||||
@@ -193,4 +193,5 @@ ModifierTypeInfo modifierType_EdgeSplit = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -1041,4 +1041,5 @@ ModifierTypeInfo modifierType_Explode = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -162,4 +162,5 @@ ModifierTypeInfo modifierType_Fluidsim = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -289,4 +289,5 @@ ModifierTypeInfo modifierType_Hook = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -156,4 +156,5 @@ ModifierTypeInfo modifierType_Lattice = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -411,4 +411,5 @@ ModifierTypeInfo modifierType_Mask = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -463,4 +463,5 @@ ModifierTypeInfo modifierType_MeshDeform = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -333,4 +333,5 @@ ModifierTypeInfo modifierType_Mirror = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -131,4 +131,5 @@ ModifierTypeInfo modifierType_Multires = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -77,4 +77,5 @@ ModifierTypeInfo modifierType_None = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -354,4 +354,5 @@ ModifierTypeInfo modifierType_ParticleInstance = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -242,4 +242,5 @@ ModifierTypeInfo modifierType_ParticleSystem = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -907,4 +907,5 @@ ModifierTypeInfo modifierType_Screw = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -148,5 +148,6 @@ ModifierTypeInfo modifierType_ShapeKey = {
|
||||
/* dependsOnTime */ NULL,
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -186,4 +186,5 @@ ModifierTypeInfo modifierType_Shrinkwrap = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -385,4 +385,5 @@ ModifierTypeInfo modifierType_SimpleDeform = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -189,4 +189,5 @@ ModifierTypeInfo modifierType_Smoke = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL
|
||||
};
|
||||
|
||||
@@ -270,4 +270,5 @@ ModifierTypeInfo modifierType_Smooth = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -87,4 +87,5 @@ ModifierTypeInfo modifierType_Softbody = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -230,8 +230,10 @@ static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||
|
||||
float (*vert_nors)[3]= NULL;
|
||||
|
||||
float const ofs_orig= - (((-smd->offset_fac + 1.0f) * 0.5f) * smd->offset);
|
||||
float const ofs_new= smd->offset - (((-smd->offset_fac + 1.0f) * 0.5f) * smd->offset);
|
||||
const float ofs_orig= - (((-smd->offset_fac + 1.0f) * 0.5f) * smd->offset);
|
||||
const float ofs_new= smd->offset - (((-smd->offset_fac + 1.0f) * 0.5f) * smd->offset);
|
||||
const float offset_fac_vg= smd->offset_fac_vg;
|
||||
const float offset_fac_vg_inv= 1.0f - smd->offset_fac_vg;
|
||||
|
||||
/* weights */
|
||||
MDeformVert *dvert, *dv= NULL;
|
||||
@@ -398,8 +400,9 @@ static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||
dv= dvert;
|
||||
for(i=0; i<numVerts; i++, mv++) {
|
||||
if(dv) {
|
||||
if(defgrp_invert) scalar_short_vgroup = scalar_short * (1.0f - defvert_find_weight(dv, defgrp_index));
|
||||
else scalar_short_vgroup = scalar_short * defvert_find_weight(dv, defgrp_index);
|
||||
if(defgrp_invert) scalar_short_vgroup = 1.0f - defvert_find_weight(dv, defgrp_index);
|
||||
else scalar_short_vgroup = defvert_find_weight(dv, defgrp_index);
|
||||
scalar_short_vgroup= (offset_fac_vg + (scalar_short_vgroup * offset_fac_vg_inv)) * scalar_short;
|
||||
dv++;
|
||||
}
|
||||
VECADDFAC(mv->co, mv->co, mv->no, scalar_short_vgroup);
|
||||
@@ -412,8 +415,9 @@ static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||
dv= dvert;
|
||||
for(i=0; i<numVerts; i++, mv++) {
|
||||
if(dv) {
|
||||
if(defgrp_invert) scalar_short_vgroup = scalar_short * (1.0f - defvert_find_weight(dv, defgrp_index));
|
||||
else scalar_short_vgroup = scalar_short * defvert_find_weight(dv, defgrp_index);
|
||||
if(defgrp_invert) scalar_short_vgroup = 1.0f - defvert_find_weight(dv, defgrp_index);
|
||||
else scalar_short_vgroup = defvert_find_weight(dv, defgrp_index);
|
||||
scalar_short_vgroup= (offset_fac_vg + (scalar_short_vgroup * offset_fac_vg_inv)) * scalar_short;
|
||||
dv++;
|
||||
}
|
||||
VECADDFAC(mv->co, mv->co, mv->no, scalar_short_vgroup);
|
||||
@@ -473,15 +477,21 @@ static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
|
||||
|
||||
/* vertex group support */
|
||||
if(dvert) {
|
||||
float scalar;
|
||||
|
||||
dv= dvert;
|
||||
if(defgrp_invert) {
|
||||
for(i=0; i<numVerts; i++, dv++) {
|
||||
vert_angles[i] *= (1.0f - defvert_find_weight(dv, defgrp_index));
|
||||
scalar= 1.0f - defvert_find_weight(dv, defgrp_index);
|
||||
scalar= offset_fac_vg + (scalar * offset_fac_vg_inv);
|
||||
vert_angles[i] *= scalar;
|
||||
}
|
||||
}
|
||||
else {
|
||||
for(i=0; i<numVerts; i++, dv++) {
|
||||
vert_angles[i] *= defvert_find_weight(dv, defgrp_index);
|
||||
scalar= defvert_find_weight(dv, defgrp_index);
|
||||
scalar= offset_fac_vg + (scalar * offset_fac_vg_inv);
|
||||
vert_angles[i] *= scalar;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -748,5 +758,6 @@ ModifierTypeInfo modifierType_Solidify = {
|
||||
/* dependsOnTime */ NULL,
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -152,4 +152,6 @@ ModifierTypeInfo modifierType_Subsurf = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
|
||||
@@ -192,4 +192,5 @@ ModifierTypeInfo modifierType_Surface = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -434,4 +434,5 @@ ModifierTypeInfo modifierType_UVProject = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
||||
@@ -140,6 +140,11 @@ static void foreachIDLink(ModifierData *md, Object *ob, IDWalkFunc walk, void *u
|
||||
walk(userData, ob, (ID **)&wmd->map_object);
|
||||
}
|
||||
|
||||
static void foreachTexLink(ModifierData *md, Object *ob, TexWalkFunc walk, void *userData)
|
||||
{
|
||||
walk(userData, ob, md, "texture");
|
||||
}
|
||||
|
||||
static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene),
|
||||
Object *UNUSED(ob), DagNode *obNode)
|
||||
{
|
||||
@@ -364,4 +369,5 @@ ModifierTypeInfo modifierType_Warp = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ foreachTexLink,
|
||||
};
|
||||
|
||||
@@ -126,6 +126,12 @@ static void foreachIDLink(ModifierData *md, Object *ob,
|
||||
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
||||
}
|
||||
|
||||
static void foreachTexLink(ModifierData *md, Object *ob,
|
||||
TexWalkFunc walk, void *userData)
|
||||
{
|
||||
walk(userData, ob, md, "texture");
|
||||
}
|
||||
|
||||
static void updateDepgraph(ModifierData *md, DagForest *forest,
|
||||
Scene *UNUSED(scene),
|
||||
Object *UNUSED(ob),
|
||||
@@ -466,4 +472,5 @@ ModifierTypeInfo modifierType_Wave = {
|
||||
/* dependsOnNormals */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ foreachTexLink,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user