private static void InternalExport(IndexRenderersData indexRenderersData, Stack <int> indices, Transform rootTransform, bool includeDeactive)
        {
            int childCount = rootTransform.childCount;

            for (int iChild = 0; iChild < childCount; iChild++)
            {
                Transform  iterChild      = rootTransform.GetChild(iChild);
                GameObject iterGameObject = iterChild.gameObject;
                if (!includeDeactive &&
                    !iterGameObject.activeSelf)
                {
                    continue;
                }

                indices.Push(iChild);
                if (Common.Utility.ObjectUtility.HasStaticEditorFlag(iterGameObject
#if UNITY_2019_1_OR_NEWER
                                                                     , StaticEditorFlags.ContributeGI
#else
                                                                     , UnityEditor.StaticEditorFlags.LightmapStatic
#endif
                                                                     ))
                {
                    UnityEngine.Renderer iterRenderer = iterGameObject.GetComponent <UnityEngine.Renderer>();
                    if (iterRenderer)
                    {
                        indexRenderersData.RenderersIndices.Add(new IndexRenderersData.Indices(indices));

                        RendererData rendererData = new RendererData();
                        rendererData.Export(iterRenderer);
                        indexRenderersData.RenderersData.Add(rendererData);
                    }
                }

                InternalExport(indexRenderersData, indices, iterChild, includeDeactive);
                indices.Pop();
            }
        }