[solved] Hurdles to implementing Merge modifier?

Thanks a lot! :blush:

I’m not sure this is something really needed but for this to work properly shouldn’t particular modifiers (like Boolean) output a vertex group (anything newly generated) which then can be specifically targeted by the Weld?

1 Like

Could be nice yes, in houdini you can save intersected vertices in a group and call it later.

You gotta love the blender devs. :’)

Also thanks to @Wazou for bringing this up time and time again!

1 Like

The internal logic of modifiers will be re-used, so writing new modifiers now isn’t wasted effort.

11 Likes

Doesn’t that already exist and is called the “user feedback” forum? :slight_smile:

This topic was a direct question to the developers what it would take to get a specific feature (with a decade of history) into Blender, and it seems to have been asked in the correct place and worked as well! :+1:

I’ll take the rest in PM as you suggested. (EDIT: No PM, made a thread instead.)

Do you think this is what you would have posted if you had waited for 20 mins between posting and writing it?

Yes, this is ridiculous how people can react, I would have written the same 20 minutes after.
If you are not ok with that, it’s not my issue.

1 Like

That’s great to hear!

That won’t improve CTRL-Z, array modifier, instancing, or edit mode performance in any way.

Hi Ideasman42, I really respect your opinion as a blender dev but I wanted to answer your concerns with some of my personal experiences using Blender in production as concept artist.

  1. Needing to account for all possible degenerate results

You can create a grid with 50 divs and select a few faces, run inset, and if you push it far enough you will get horribly messed up geo that is crossing over itself and all kinds of geo damage. Does that mean we shouldn’t have inset? It makes no sense to keep a very valuable tool away because it won’t give us perfection. Yes sometimes it may mess things up, but hey, we can just turn off the modifier then! The pros outweigh the cons considerably, and I really don’t view this as a con at all

  1. It’s useful because you can merge in a procedural way, changing your input geo and still merging without any destruction. It would be like saying whats the point of a subdivision modifier when we can subdivide in edit mode. Being able to go back in non destructively is a life saver when working with clients on hard surface designs.

  2. Thats the first point, and again, I’m totally fine with this modifier not creating 100% perfect solution every time. I’m sure everyone else is okay with that as well. We don’t need perfection, nothing is perfect, it just has to work decently, as good as edit mode. Slow is totally fine again because we can just turn off the preview for the modifier and view it when we need it.

I think Merge modifier is very important and at this time I cannot see any cons. You have my vote, Wazou

2 Likes

I could have been more clear, by:

Needing to account for all possible degenerate results

I meant we need to prevent invalid states which could crash Blender (a face using the same vertex/edge twice, or duplicate edges/faces - for example).

Where to draw the line is always a judgement call.

Probably people using this modifier don’t use it for animation, if you do - it will be prone to jitter output.

I’m wary of adding functionality which users can justifiably report new bugs in.

Although we can document it as a known limitation, it doesn’t stop people reporting bugs and having the perception that Blender is “buggy” because of these kinds of unpredictable results.

3 Likes

Thank you ! The first point makes a lot of sense, I don’t know much about the process for that and how much of it can just be go into edit mode -> select all -> merge by distance on a continual basis to avoid any rewrites at all.

But regarding animation, a very simple solution would be checking if the object has keyframe data and sending a popup saying that adding this merge modifier will remove the keyframes. No bug reports then. I’m sure there can be other problems that can come up though , its definitely a judgement call. I can’t think of any that are worth not having it, but thats my opinion.

I’m still using Blender anyways because its the best, so thats all I can say. I hope that these kinds of worries don’t prevent further development of things like VR and so on. I would much rather have new features that are buggy in certain cases over no features until they are very reliable. Especially with our community where anyone can go in and help once the ball gets rolling.

This should not only concern merge modifier but also the non-modifier operators, which are often prone to creating such geometry. Merge by distance operator for example.

A bug should be reported if modifiers are creating meshes which violate our own rules for geometry.

Try apply the modifier and run this in the Python Console, with Blender running from a terminal:

C.object.data.validate(verbose=True)

Errors will be printed, with the function returning True if a change needed to be made.

I have made a thread about this already:

But the geometry showcased in the thread returns False when running that Python command. This is the kind of geometry only Blender considers as correct, but pretty much any other software alongside Blender in the pipeline considers it degenerate geometry. Furthermore, even if it’s the kind of topology Blender can handle, it’s only rarely the kind of topology user desires.

All modifiers have limitation when it come to animation IMO.
On some cases, like motion design, it’s a good thing, on other like a character, it will not work.
People have to learn to use the modifiers accordingly of what they are doing with their asset.

The only important thing is to make it not break blender’s rules as ideasman42 said.
I’m not a dev, so I don’t really see the issue with the merge modifier.

After for using other modifiers like insert, extrude etc, I think the BF will have to make the workflow a little bit different, more like Houdini, with groups, etc.

2 Likes

Discussing what you think should/shouldn’t be accepted is a separate issue.

1 Like

2 posts were merged into an existing topic: Blender’s Architecture (split from merge modifier discussion)

11 posts were split to a new topic: Blender’s Architecture (split from merge modifier discussion)