回答:
これはかなり簡単に実行できます。Weexeは実際には正しいパスにあり、必要と思われる情報全体を提供していませんでした。
最初に、2つのスプライトと、間にイメージを保持するCanvasを作成します。 バックグラウンドまたはフォアグラウンドで使用する2つのスプライトについて、「レイヤーの順序」を2および0に設定します。数値が大きいほど、前面にあります。UIを含むすべての要素は、同じ並べ替えレイヤー上にある必要があります。
次に、キャンバスをクリックして、レンダリングモードをワールドスペースに設定します。これは、ワールド内のスプライト間を移動するオプションを実際に取得するために必要です。Cuzには、CanvasにもSorting LayerとOrder in Layerオプションがあります。レイヤーの順序を1に設定し、並べ替えレイヤーを2つのスプライトと同じに設定します。
注: UI画像が見つからない場合は、実際にはシーンで非常に大きいため、サイズを大幅に縮小して画像(キャンバスではない)に配置する必要があります。それを見つけたい場合は、たくさんズームアウトすると、それが表示されます(ヒント:実際に小さな画像の場合は、現在配置されている場所がわかるように変換ツールをアクティブにする必要があります)。
私はこれを例の画像ですぐに再現しましたが、確実に機能します。他に質問がある場合はコメントしてください。喜んでお手伝いします。
レンダリングモードの「ワールドスペース」リファレンスを使用する必要があります:http : //docs.unity3d.com/Manual/UICanvas.html
私はこれと1時間戦い続け、ついに解決策を思いつきました。
私はWorld Canvas UIを使用していて、それをスプライトで正しく機能させることができませんでした。最初に、スプライトは常に一番上にあり、その後スプライトはその上のUIイメージが完全に不透明でなくても完全に消えました。
それに基づいて:http : //answers.unity3d.com/questions/832834/unity-2d-46b-ui-why-are-instantiated-prefab-sprite.html
バックグラウンドスプライトの「スプライトレンダラー」の「レイヤーの順序」を0
に設定する
必要があります。次に、UI Canvasコンポーネントの「レイヤーの順序」を1に設定します。フォアグラウンドスプライトの「レイヤーの順序」を2に設定する必要があります。 。
並べ替えレイヤーは3つの要素のデフォルトでした。
基本的に、複数のワールドスペースキャンバスと複数のスプライトを操作し(2D要素の多くのレイヤーが必要な場合)、並べ替えレイヤーを適切に設定できます(UI要素のOrder in Layerを個別に設定できないことに注意してください。階層内のGameObjectの順序によって設定されます。代わりに、CanvasのUIのOrder in Layerを設定する必要があります)