Fix T103294: bring back modifyMesh function for geometry nodes modifier
This was removed inrBb1494bcea7b6bb608 under the assumption that it is not needed anymore. Apparently it is, so this commit brings it back.
This commit is contained in:
parent
c18055ba5c
commit
28511ac6cf
Notes:
blender-bot
2023-02-14 00:29:15 +01:00
Referenced by issue #103301, Crash with Blender Studio's stretching visualization file Referenced by issue #103294, Regression: Render crash if add another modifier after geometry node on object on cycles render
|
@ -1309,6 +1309,19 @@ static void modifyGeometry(ModifierData *md,
|
|||
}
|
||||
}
|
||||
|
||||
static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *ctx, Mesh *mesh)
|
||||
{
|
||||
GeometrySet geometry_set = GeometrySet::create_with_mesh(mesh, GeometryOwnershipType::Editable);
|
||||
|
||||
modifyGeometry(md, ctx, geometry_set);
|
||||
|
||||
Mesh *new_mesh = geometry_set.get_component_for_write<MeshComponent>().release();
|
||||
if (new_mesh == nullptr) {
|
||||
return BKE_mesh_new_nomain(0, 0, 0, 0, 0);
|
||||
}
|
||||
return new_mesh;
|
||||
}
|
||||
|
||||
static void modifyGeometrySet(ModifierData *md,
|
||||
const ModifierEvalContext *ctx,
|
||||
GeometrySet *geometry_set)
|
||||
|
@ -1869,7 +1882,7 @@ ModifierTypeInfo modifierType_Nodes = {
|
|||
/* deformMatrices */ nullptr,
|
||||
/* deformVertsEM */ nullptr,
|
||||
/* deformMatricesEM */ nullptr,
|
||||
/* modifyMesh */ nullptr,
|
||||
/* modifyMesh */ modifyMesh,
|
||||
/* modifyGeometrySet */ modifyGeometrySet,
|
||||
|
||||
/* initData */ initData,
|
||||
|
|
Loading…
Reference in New Issue