Poll

picking a group should...

pick only the actually clicked object
1 (16.7%)
pick entire group
5 (83.3%)

Total Members Voted: 6

Author Topic: CMasking adds child objects of selected object  (Read 9225 times)

2017-03-09, 12:07:04

Remi.V

  • Active Users
  • **
  • Posts: 26
    • View Profile
    • MYREZE AS
We came across an issue yesterday which seems like a bug to us. When we added a CMasking render element in RGB mode and added 3 separate objects (by object selection mode), we ended up with 2 of them appearing yellow. We tried separating it up into 3 monochromatic elements instead to then notice more objects appeared in the mask (objects linked to the selected object) that's not part of our selection.

The problem resolved itself by unlinking the objects as we did not need them to be parented in this particular scene but we can see this can cause an issue with other projects where the link is necessary due to rigging etc. 

2017-03-09, 19:21:21
Reply #1

Nik

  • Active Users
  • **
  • Posts: 167
    • View Profile
    • HQ Details
I vote for checkbox "include childrens" in CMasking element.

Some people like it, others don't (like you and me).
In some cases is useful, in other is pain.

Corona devs don't like to overcomplicate GUI but I don't see any other way to please everybody :)

2017-03-09, 19:52:11
Reply #2

Remi.V

  • Active Users
  • **
  • Posts: 26
    • View Profile
    • MYREZE AS
"Corona devs don't like to overcomplicate GUI but I don't see any other way to please everybody :)"

That might be true, but adding children to the mask without it being documented is misleading...

2017-04-04, 18:42:44
Reply #3

Ondra

  • Administrator
  • Active Users
  • *****
  • Posts: 9048
  • Turning coffee to features since 2009
    • View Profile
There is no place for the additional checkbox - the button is used in many places, some with really small dialogs. We made the decision to include groups based on another user request, and it made sense - currently the picker when clicking on some object will pick exactly what you would have selected when doing viewport selection and clicking on the object. What do other think, what is the best solution?
Rendering is magic.How to get minidumps for crashed/frozen 3ds Max | Sorry for short replies, brief responses = more time to develop Corona ;)

2017-04-04, 18:49:06
Reply #4

pokoy

  • Active Users
  • **
  • Posts: 1859
    • View Profile
I ran into it, too, and it was not what I wanted - so my vote is against automatic addition of child objects.

2017-04-04, 20:05:28
Reply #5

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 12739
  • Marcin
    • View Profile
I am not casting any vote, as I really can't tell which of the workflows would be more friendly in real life tasks, but as a counter-argument for any change I can say that I do not recall any users actually complaining about how it currently works.
Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us

2017-04-04, 20:09:18
Reply #6

pokoy

  • Active Users
  • **
  • Posts: 1859
    • View Profile
Is the poll about adding the group when picking a group member or adding the child hierarchy if picking the parent?

Because for the group it would actually make sense, for the child hierarchy not really. Not sure what to vote for.

2017-04-04, 20:17:20
Reply #7

Nik

  • Active Users
  • **
  • Posts: 167
    • View Profile
    • HQ Details
When user clicks + and picks the object, then all his childrens are added to the list. BUT, if you will remove childrens from this list manually, then they still will be visible in mask, only because their parent is there.

So, if you will leave this behaviour, but let user remove childrens from list manually, it could be compromise. For one simple reason - only objects in list should be visible in mask, IMHO.

It's okay when childrens added to the list automatically, but let users remove them.

UPD. Make it work exactly like Material Override Exclude + button. It adds childrens but you're able to remove them if you wish.
CTexmap exclude list works in the same "wrong" way :)
I believe all + buttons and include/exclude corona lists should work the same.

UPD 2. My bad. I'm wrong about material override exclude. Sorry
« Last Edit: 2017-04-04, 22:17:04 by Nik »

2017-04-04, 22:02:33
Reply #8

Ondra

  • Administrator
  • Active Users
  • *****
  • Posts: 9048
  • Turning coffee to features since 2009
    • View Profile
When user clicks + and picks the object, then all his childrens are added to the list. BUT, if you will remove childrens from this list manually, then they still will be visible in mask, only because their parent is there.

So, if you will leave this behaviour, but let user remove childrens from list manually, it could be compromise. For one simple reason - only objects in list should be visible in mask, IMHO.

It's okay when childrens added to the list automatically, but let users remove them.

UPD. Make it work exactly like Material Override Exclude + button. It adds childrens but you're able to remove them if you wish.
CTexmap exclude list works in the same "wrong" way :)
I believe all + buttons and include/exclude corona lists should work the same.
the buttons should work the same (it is the same code). Can you describe where it works differently in greater detail (or perhaps do a video? ;))
Rendering is magic.How to get minidumps for crashed/frozen 3ds Max | Sorry for short replies, brief responses = more time to develop Corona ;)

2017-04-04, 22:40:48
Reply #9

Nik

  • Active Users
  • **
  • Posts: 167
    • View Profile
    • HQ Details
I found a reason. It's some kind of Corona bug :)
So I created 3 spheres and link them as chain. Right one is root. Then I excluded root from FreeSpot light source and rendered it with Vray. Result is intuitive - only root is excluded. Then I switched to Corona and voila, all spheres became excluded but exclude list contain only root.

I'm too lazy at 23:40 to make it pretty, so here are some ugly images attached.

2017-04-05, 09:03:49
Reply #10

Frood

  • Active Users
  • **
  • Posts: 1919
    • View Profile
    • Rakete GmbH
This is no bug, it´s just how it works now (and being discussed). It´s handled "dynamically" what is very charming on one side but misleading to another. If you add a fourth sphere to the chain you exclude all four even though only one object is in the list. So expect to have no consistency beween the mask and the object list when using a hierarchy.

Basically I´m slightly agains "magic in the background" out of the control of the user and cases where you extend some hierarchy and like to have it updated automatically in a mask (not in the object list) may be very rare. So my tendency is like this:

If it´s a container object (group, CoronaScatter, and yes ForestObject as well ;) child objects should be included (when rendering). If selecting a single object (from an opened grop), of course only add this object. If it´s about a hierarchy: do not include child objects at render time. Here is the reason:

You could then choose yourself what to get because the standard selection method of max by doubleclicking some object of the hierarchy chain can be used (selects object + children). The only thing you have to do is selecting the object and it´s children by doublecklick and then use the "+". Drawback: Not dynamic any more. But as mentioned: no confusion is maybe better that having some (black) magic going on?


Good Luck


Never underestimate the power of a well placed level one spell.

2017-04-05, 09:23:10
Reply #11

PROH

  • Active Users
  • **
  • Posts: 1219
    • View Profile
I agree with the way Frood describes. It's the simples and most logical to understand, and therefore to use.

2017-04-05, 09:25:25
Reply #12

Nik

  • Active Users
  • **
  • Posts: 167
    • View Profile
    • HQ Details
Exclude lists should work the same way in all renders. It's not only corona feature. How will you even convert a scene with this magic feature?

Users have hands and brain. Most of them :) scatter is one object, forest pack is scatter too. Groups is not, because it can be opened and... and then what?

I'm sure that devs can add any magic to their + buttons (add childrens automatically in list) but lists behaviour should be consistent to all renders.
It seems I'm alone :)

UPD. Maybe I didn't understand Frood message correctly.
I think this solution could be better: when GroupHead (no matter opened or closed of course) added to exclide list, then exclude all childrens of grouphead (I guess nobody wants a mask for grouphead helper, right?), but If a GroupMember object is in list and GroupHead is not, then exclude only this object. There is no problems with scatters because it's not hierarchy. So this solution probably won't broke too much old scenes with some excludes, but will be more intuitive solution.
If Frood meant something like this then I agree with him :)
« Last Edit: 2017-04-05, 09:43:06 by Nik »

2017-04-05, 10:48:45
Reply #13

Frood

  • Active Users
  • **
  • Posts: 1919
    • View Profile
    • Rakete GmbH
If Frood meant something like this then I agree with him :)

Yes this is exactly how I meant it, sorry if I was not clear enough.

To whoever created the poll: how is this to understand? I don´t get it. We have to make a difference between the object list and what´s actually rendered. So it´s not about "picking" when talking about groups (?) but also what happens at render time. And groups are only one aspect of this discussion anyway.


Good Luck


Never underestimate the power of a well placed level one spell.

2017-04-05, 13:47:47
Reply #14

PROH

  • Active Users
  • **
  • Posts: 1219
    • View Profile
Yes, I too do think that the "vote" description should be a bit more accurate.

Are you asking about a closed group or an open group?
- If "closed" then the whole group should be selected (as Max does it)
- If "open" then only the clicked object should be selected (as Max does it)
- If the group object of an open group is clicked then the whole group should be selected (as Max does it).

Where do I vote for that?