FC2ブログ
    03 «1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.» 05

    ハルシオンシステムの気ままBlog

    株式会社ハルシオンシステムのメンバーが送る、UnityやらJavaやらの技術的話題から、自社開発のアプリの宣伝とかとかのブログです。ほんと気ままにいきたいと思います。更新日は毎週 月 木でっす!

     

    【ハルシオンブログ】オブジェクトの中のコンポーネントの順番をスクリプトから替えれるらしいのです。ってことでやってみた。 

    2021年ももう4月になってしまいました…
    恐ろしい速度で日が過ぎていきます・・・・

    さてUnityで「こんな機能どこで使うんだろう・・・?」ってスクリプトがあったので紹介(?)

    コンポーネントの順番を並び替える方法です。

    UnityEditorInternal.ComponentUtility.MoveComponentUp(コンポーネント)
    UnityEditorInternal.ComponentUtility.MoveComponentDown(コンポーネント)

    という二つがあるのですが、これ何に使うんでしょう?

    using UnityEngine;
    using UnityEngine.UI;

    public class Blog0405 : MonoBehaviour
    {
    [SerializeField] GameObject image;
    [SerializeField] Button btnChangeSort;

    bool isImageUp = true;

    private void Start() {
    btnChangeSort.onClick.AddListener(OnClickChangeSort);
    }

    void OnClickChangeSort() {
    if (isImageUp) {
    UnityEditorInternal.ComponentUtility.MoveComponentUp(image.GetComponent<CanvasGroup>());
    isImageUp = false;
    } else {
    UnityEditorInternal.ComponentUtility.MoveComponentUp(image.GetComponent<Image>());
    isImageUp = true;
    }
    }
    }




    ボタンを押すと青いImageの中のコンポーネントの順序が変わるといった感じです。
    ImageのオブジェクトにはImageコンポーネントと、CanvasGroupのコンポーネントをつけておきました。



    こんな感じ。

    ボタンを押すたびにコンポーネントの順番が変わるんです…ええ 変わるんです。

    何に使うんでしょうか・・・・??

    ということで、いらない機能「コンポーネントの順番を変える」の紹介でした。

    あでゅ~ノシ


    Category: 開発日記(Unity)

    tb 0 : cm 0