Harmalarm on Fri Aug 12, 2016 5:02 pm
Quote:
When the ACT is imported what's the reason for the way it uses groups?
The sole reason for them is that they act as null nodes in the hierarchy. Pivot's of car wheels that should rotate the wheel when steering sometimes lack a model, but do have an act entry for rotation purposes. The group will act as that actor.
For tracks the groups are part of the bigger hierarchy for preprocessed tracks. Again these are null nodes, so no models but still actor entries. They contain the subparts of the track in the form of a tree diagram. Oh and the groups represent the dimensions of the track parts and where what will be rendered.
Perhaps there are faster ways to work with groups. I think I add objects to groups one by one, and yeah, that is much slower than the way you suggest. I'm sure that can be optimized.
Via maxscript you can do all kinds of tricks with groups, and you can totally wreck your scene. Objects can be turned into groupheads, objects can be children of groups but not be a real groupmember, objects can be groupmembers with a deleted grouphead so they remain members, unless you fix it by scripting. That sort of junk. Basically groups are quite dirty in max if you don't use them right.
If you are going to use groups, be aware that the group representation is a helper object, and when you have a lot of those on screen the fps will drop dramatically. Another thing that Autodesk should work on. For some reason, even though the helper objects are super simple to render, many of them will have a big impact on your navigation in the viewport. Then again, maybe they fixed this without me knowing it.
And nice post man, love those pictures. ;)
EDIT: after re-reading your question I think I should also clarify that child/parent behaviour is a bit different from grouphead/groupmember behaviour. I'm sure if you check out the help files you will find what you need, but setting an objects as a child of the grouphead isn't enought. You should really make it a groupmember to make it work properly.
Funny thing is that objects within a group are referred to as group.children, so I guess the guys at autodesk were a bit confused themselves... :)