void FetchTree(MBObject obj, int indent)
{
// skip Parameters and EmitterTypes!
if (obj.Matches(typeof(MBParameter),typeof(MBEmitterType))) return;
// Add self
mObjects.Add(obj);
mIndent.Add(indent);
// store Emitters in a additional list for easier access
if (obj is MBEmitter)
mEmitters.Add((MBEmitter)obj);
// Get list of smart childs
List<MBObject> childs = MBUtility.GetChildren<MBObject>(obj.transform, true, true);
// Sort them in a nice order
childs.Sort();
// Recursive call children
foreach (MBObject sub in childs)
FetchTree(sub, indent + 1);
}