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やらの技術的話題から、自社開発のアプリの宣伝とかとかのブログです。ほんと気ままにいきたいと思います。更新日は毎週 月 木でっす!

     

    【ハルシオンブログ】UnityでSerializeFieldって使ってますか?privateなのにインスペクタから設定したりアサインできたりっするやつです 

    こんにちは。坂内です。

    台風でかいっすね。
    九州、四国のみなさん気を付けてくださいな。

    Unityで「SerializeField」って使っていますか?

    使い方は以下です。


    public class Blog20200907 : MonoBehaviour {

    [SerializeField] int number = 0;
    [SerializeField] int score = 10;
    }


    これを書くことによって「privateだけど、Unityのインスペクターに表示する」が可能になります。



    詳しくはこちらを参考してください
    https://docs.unity3d.com/ja/current/Manual/script-Serialization.html


    他のコードからはPublicではないので、呼ぶことはできません。

    ボタンなどにコードから処理を追加するときなどは、他からそのボタンを呼ぶ必要がない限り、SerializeFieldを使うといいかと思います。

    例)ボタンにアクションを追加

    public class Blog20200907 : MonoBehaviour {

    [SerializeField] Button btnAction;

    private void Start() {
    btnAction.onClick.AddListener(OnClickButton);
    }

    void OnClickButton() {
    Debug.Log("OnClickButton");
    }
    }


    こんな感じ。

    無駄にPublicにしないのは大事だと思うので、使ってなかった方はぜひ使ってみてくださいな。

    では、あでゅ~ノシ

    Category: 開発日記(Unity)

    tb 0 : cm 0   

    コメント

    コメントの投稿

    Secret

    トラックバック

    トラックバックURL
    →http://halcyonsystemblog.jp/tb.php/730-40ad03e7
    この記事にトラックバックする(FC2ブログユーザー)