1. 程式人生 > >【轉載】【Unity】【UI】【通用程式碼】UI層次排序

【轉載】【Unity】【UI】【通用程式碼】UI層次排序

程式碼出自雨鬆MOMO的Blog。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class UIDepth : MonoBehaviour
{
    public UIFllow UIFllow;//UI跟隨物體移動,見前文

    private int offset;//距離

    public bool isUI = true;
    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
void Update () { offset = (int)UIFllow.offset; depth(-offset); } void depth(int order) { if (isUI) { Canvas canvas = GetComponent<Canvas>(); if (canvas == null) { canvas = gameObject.AddComponent<Canvas>(); } canvas.overrideSorting = true
; canvas.sortingOrder = order; } else { Renderer[] renders = GetComponentsInChildren<Renderer>(); foreach (Renderer render in renders) { render.sortingOrder = order; } } } }