私は3D空間で動き回っている約20個のオブジェクトを扱っています。アドビでは、「Matrix3Dオブジェクトを使用して表示を並べ替える」ことをお勧めします。
TransformオブジェクトのgetRelativeMatrix3D()メソッドを使用して、子3D表示オブジェクトの相対z軸を取得します。
removeChild()メソッドを使用して、表示リストからオブジェクトを削除します。
相対的なz軸の値に基づいて表示オブジェクトを並べ替えます。
addChild()メソッドを使用して、子を逆の順序で表示リストに追加し直します。
素晴らしい。オブジェクトが動いていない場合は問題ありません。しかし、アニメーションが発生していて、あるオブジェクトがz空間で別のオブジェクトの前に来る場合はどうなるでしょうか。オブジェクトは、Zオーダーではなく、ディスプレイリスト内の位置に従って表示されます。アニメーション化中にオブジェクトをzオーダーを尊重させるにはどうすればよいですか(オブジェクトAのz値がオブジェクトBよりも小さくなる場合、オブジェクトAをオブジェクトBの前に表示します)。明らかに、アニメーション中に表示リストをクリアすることはできません。