2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Componentを自動で追加する方法。

Posted at

#はじめに

本日から初めて技術ブログを書いてみる。

小さなことでも学んだことは書いて行こうと思う。

##本題

“shot” 2020-08-26 20.33.23.png

こんな感じでキューブを置いてみた。

普段は右下の「Add Component」を押してリジットボディなどコンポーネントを追加すると思うが、スクリプトを用意しておくだけで自動でそれをやってくれるスクリプトの書き方を見つけた。

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

public class Testscript : MonoBehaviour
{

    void Start()
    {
        
    }

    void Update()
    {
        
    }
}


デフォルトではこんな感じになっていると思う。
名前は「Testscript」としてある。

そこのusing〜と書かれているところとクラス名が書いてあるところの間に

[RequireComponent(typeof(追加したいコンポーネントの名前))]

こいつを追加してやれば、このスクリプトをくっつけたゲームオブジェクトはこの「追加したいコンポーネント」の部分に書かれたものを勝手に追加してくれる。
例えば「Rigidbody」なら

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

[RequireComponent(typeof(Rigidbody))]

public class Testscript : MonoBehaviour
{

    void Start()
    {
        
    }

    void Update()
    {
        
    }
}

こうする。

“shot” 2020-08-26 20.44.56.png

そしてキューブにこのスクリプトをはっつけたら自動で「Rigidbody」も追加された。

このRequireComponentを書く癖をつけとけばコンポーネントのつけ忘れなどのミスも減らせるし、いちいち手動で追加する手間も省ける!

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?