Modifier Tools: "Viewport Vis" turns off collision modifier,collision modifier has no indicator, or way to re enable except by again pushing viewport vis
Closed, ResolvedPublic

Description

Windows 7 64 bit
GTX 970
16GB RAM

Blender 2.79 Official (5bd8ac9)

When an object is set as a collision object in cloth, softbodies and particle simulations, and the "Viewport Vis" button is pressed above the modifier stack, the object's collision modifier is turned off. This may be correct behavior, however, as the collision modifier has no visibility toggle button (the eye) like other modifiers do, there is no way to tell that it is disabled, nor a button to re enable, except for again pushing the "viewport vis" button.

I was pulling my hair out trying to figure out why my cloth simulation stopped colliding with some of my objects. I had disabled all modifiers via the viewport vis button, then turned some of them back on individually (using the little eye icons). I did not realize that this had also turned off the collision modifier (as there is no indicator.) I first fixed it by going to the physics panel and removing the collision modifier (hitting the white X) and then re enabling it. This then led me to the conclusion that when I had hit the viewport vis button it had disabled collisions. I retested in a new file and confirmed this is the exhibited behavior.

Steps to reproduce:**
1.Set up a cloth sim (I know you don't need this, but for the sake of being thorough):
Subdivide default cube as needed and set as collision.
Add a plane above cube, subdivide as needed and add cloth modifier and enable collisions.
Sim results as expected.

  1. Enable the Modifier Tools Addon in the addons panel.
  2. Go to the modifiers panel, click viewport vis.
  3. Alt-A to sim. Now results in no collision with cube.
  4. Hit viewport vis button again, collision is restored.

This behavior makes sense, but with no indicator or specific switch for the collision modifier, in instances like above where you don't know it's off, it can be very confusing.

Once again, thank you for your very hard work. The Blender community and myself are ever grateful.

This is easy enough to set up but I can add a file if needed.

Related Objects

Vuk Gardašević (lijenstina) triaged this task as Confirmed priority.

I can confirm the issue. From a standpoint of the add-on it just loops through the modifiers and flips a property. However it can be frustrating for sure.
Nevertheless, I'm not sure why Collision not available in the UI in the template_modifier or it is not exposed in the Physics panel when calling physics_add?

There are two possibilities:

  • I can from the add-on standpoint skip some modifiers that don't have visibility exposed (like collision and give a message about it)
  • If there are no issues with the Collision modifier the template_modifier should expose the properties for it in the template_modifier and PHYSICS_PT_add

It all depends on the reasons why it is not exposed.

This was my conclusion as we’ll. There would not seem to be an apparent reason that the collision modifier would not be like other physics modifiers and have the same UI design, with the enable/disable icon. There have been some times I’ve wanted to disable it, but instead had to remove and reapply it in the physics panel (luckily it retains its settings.) I’m sure that there is a reason, there always is.

My vote, if there isn’t a good enough reason not to, would be to just use the template_modifier for the collision modifier and give it the same enable disable capabilities as the other modifiers. Seems like a potentially useful feature anyway. Just my 2 cents.

@Matt Hoecker (blazer003) After talks on IRC with developers, the Collision was UI disabled for a reason, as it would produce undesirable effects with some scenes. Modifier tools will skip them for now.