【轉載】【Unity】【UI】【通用程式碼】UI層次排序
阿新 • • 發佈:2019-02-11
程式碼出自雨鬆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;
}
}
}
}