void BuildNativeDisplayList()
{
if (displayObject == null || displayObject.isDisposed)
return;
int cnt = _children.Count;
if (cnt == 0)
return;
switch (_childrenRenderOrder)
{
case ChildrenRenderOrder.Ascent:
{
for (int i = 0; i < cnt; i++)
{
GObject child = _children[i];
if (child.displayObject != null && child.finalVisible)
container.AddChild(child.displayObject);
}
}
break;
case ChildrenRenderOrder.Descent:
{
for (int i = cnt - 1; i >= 0; i--)
{
GObject child = _children[i];
if (child.displayObject != null && child.finalVisible)
container.AddChild(child.displayObject);
}
}
break;
case ChildrenRenderOrder.Arch:
{
for (int i = 0; i < _apexIndex; i++)
{
GObject child = _children[i];
if (child.displayObject != null && child.finalVisible)
container.AddChild(child.displayObject);
}
for (int i = cnt - 1; i >= _apexIndex; i--)
{
GObject child = _children[i];
if (child.displayObject != null && child.finalVisible)
container.AddChild(child.displayObject);
}
}
break;
}
}