How to restrict selection of certain object without affecting its hierarchy?

How to restrict selection of certain object without affecting its hierarchy?

svafnemesis
Contributor Contributor
3,097 Views
6 Replies
Message 1 of 7

How to restrict selection of certain object without affecting its hierarchy?

svafnemesis
Contributor
Contributor

Sometimes we use Display Layers to sort out objects and controllers we want to view or hide, or restrict its selection. This is very useful until...the layer affects its members and everything else under their member's hierarchy.

 

So here's the question: how do I hide, or restrict selection of a layer of members WITHOUT affecting other objects under their hierarchy?

0 Likes
Accepted solutions (2)
3,098 Views
6 Replies
Replies (6)
Message 2 of 7

sean.heasley
Alumni
Alumni

Hi @svafnemesis and welcome to the community!

 

If I understand your issue correctly, you use layers to group things together but are having trouble hiding/showing only certain objects in said layer?

 

If that's the case there's a very simple way to hide an individual or group of objects/controllers etc by going to Display->Hide->Hide Selection (CTRL+H)

 

This will hide anything you have selected and to show it again simply select the hidden objects in your Outliner (Windows->Outliner) and press SHIFT+H.

 

Here's an article that breaks down hiding/showing objects as well!

 

Let me know if this works and/or if this doesn't solve your issue and I'll be happy to troubleshoot some more with you!

 

 

 

 

 

If one or more of these posts helped answer your question, please click Accept as Solution on the posts that helped you so others in the community can find them easily.

 

Kudos are greatly appreciated. Everyone likes a thumbs up!

 

 

 

 

0 Likes
Message 3 of 7

svafnemesis
Contributor
Contributor

Thank you very much for answering. Unfortunately no it is not the hide/show function that I need. Allow me to provide a scenario to explain what I need. Suppose I have three controllers, A B and C. For the moment I only need A and B therefore I wish to restrict selection of C so that it doesn't get in the way.

 

Now:

 

I can hide it like you suggested, but when I unhide it, I also unhide other objects that I wish to hide for good (sometimes they are really messy and they are not easy to pick out and hide again). My outliner is also a mess so I don't want to look at it either, I believe you understand the frustration. I needed an easy way, as easy as a toggle button accessible in the blink of an eye.

 

I can also put C in a layer and restrict its selection. However my B is parented to C, so by maya's mechanism my B also becomes unselectable.

 

And at this point I went out of solution thus the question.

 

Any idea how to do it properly?

0 Likes
Message 4 of 7

mspeer
Consultant
Consultant
Accepted solution

Hi!

 

For hide / unhide or for adding to a Display Layer select the Shape Node not the Transform Node.

The Shape Node is not affected by hierarchy, because the parenting is done on the Transform Node.

Message 5 of 7

sean.heasley
Alumni
Alumni

Hi @svafnemesis

 

 

I'm just checking in to see if you need more help with this. Did the suggestion that @mspeer provided work for you?

If so, please click Accept as Solution on the posts that helped you so others in the community can find them easily.

0 Likes
Message 6 of 7

svafnemesis
Contributor
Contributor

It....WORKS! So I went to outliners, turn on shape display, select the shape and add to a muted display layer, the layer effects didn't pass on to child objects! Thank you so much for the answer that's exactly what I needed.

Message 7 of 7

svafnemesis
Contributor
Contributor
Accepted solution

I want to provide with a follow up of how I deal with this thing in practical uses. So the Display Layer did give me the selection restriction, but it also create a new problem: it overrides the coloring of my controller, which I don't intend to lose. Therefore I found another solution to this, here what I did: I created a new controller first, added in a few custom attributes that gives output of 0 and 1. In node editors, I pull up the shape node of a controller that I need to work on, and the attribute node of the new controller I just created. Then I plug the 0/1 output to the visibility input of the shape node. This way I can control the visibility of all controllers at once. Now I'm able to "group" different part of my character rig.