Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Unityt超入門解説編1 / Unity_introduction_about_getcomponent

shota-yano
October 05, 2020

Unityt超入門解説編1 / Unity_introduction_about_getcomponent

社内勉強会向け資料
this.GetComponentについて

shota-yano

October 05, 2020
Tweet

More Decks by shota-yano

Other Decks in Technology

Transcript

  1. 2020/10/05
    Unity超入門
    解説編1

    View full-size slide

  2. 解説
    • GetComponentの解説
    • ふわっとした解説ですが…

    View full-size slide

  3. • Hierarchyウィンドウにある1つ1つがオブジェクト
    • それぞれが別オブジェクトとして独立
    • Cubeが2つあるがこれは形状は同じだが別々のオブジェクト
    • カメラやライトも1つのオブジェクトとして存在
    • 実行ボタンを押した瞬間、各オブジェクトがゲーム内でCreate
    オブジェクト
    オブジェクト
    オブジェクト
    オブジェクト
    オブジェクト
    オブジェクトの解説

    View full-size slide

  4. • Sphereオブジェクトの構成要素(コンポーネント)
    ※どんな機能を持っているか
    • Transform
    • Mesh Filter
    • Mesh Renderer
    • Sphere Collider
    コンポーネントの解説

    View full-size slide

  5. • Sphereオブジェクトの構成要素(コンポーネント)
    • Transformコンポーネントの設定項目
    • Position:位置を決める
    • X:水平位置
    • Rotation:回転を決める
    • Scale:大きさを決める
    • 他のコンポーネントによってどんな設定ができるのかが決まっている
    • わからないときは「?」を見ること(もしくは公式ドキュメント)
    わからないとき
    コンポーネントの解説

    View full-size slide

  6. • Textオブジェクトを追加
    • わかりやすいよう「DisplayText1」に名前を変更
    • Textオブジェクト「 DisplayText1 」のコンポーネント
    • Rect Transform
    • CanvasRenderer
    • Text
    コンポーネントの解説

    View full-size slide

  7. • Textオブジェクト「 DisplayText1 」のコンポーネントについて
    • Textコンポーネントの設定項目
    • Text:表示する文字列を設定する
    • Character:フォントやフォントサイズなどを設定する
    • Paragraph:左寄せなどを設定する
    • Color:色を設定する
    • Etc…
    などが設定可能
    コンポーネントの解説

    View full-size slide

  8. • Textオブジェクトの「DisplayText1」にスクリプトを追加
    • DisplayText1のコンポーネントに「StartText(Script)」が追加される
    • スクリプト名:StartText
    • 同時にAssetsフォルダに追加される
    • ここでコンポーネントの中身を管理する
    スクリプトの解説

    View full-size slide

  9. • DisplayText1の「StartText(Script)」コンポーネントについて
    • DisplayText1オブジェクトのTextコンポーネントのTextの値を変更
    • New Text ⇒ GAME START
    • デフォルトで2つの関数が作成される
    • Start関数:オブジェクトがCreateされたときに1回だけ実行
    • Update関数:オブジェクトの更新処理(1フレームごと)
    • ※60FPSなら1秒間に60回実行
    スクリプトの解説

    View full-size slide

  10. • this : このコンポーネントを実行しているオブジェクト
    • DisplayText1オブジェクト
    • this.GetComponent()
    • DisplayText1オブジェクトに設定されたTextコンポーネントを取得する
    • <>はコンポーネント名を指定する
    • ()はコンポーネントの型。今回はないので指定しない。
    • .text : TextコンポーネントのTextという要素を指定
    this.GetComponent().Textの解説

    View full-size slide

  11. DisplayText1オブジェクト
    • this : このコンポーネントを実行しているオブジェクト
    • DisplayText1オブジェクト
    • this.GetComponent()
    • DisplayText1オブジェクトに設定されたTextコンポーネントを取得する
    • <>はコンポーネント名を指定する
    • ()はコンポーネントの型。今回はないので指定しない。
    • .text : TextコンポーネントのTextという要素(変数)を指定
    this.GetComponent().Textの解説
    Rect Transformコンポーネント
    PosX:100
    PosY:200
    PosZ:0
    CanvasRenderer
    コンポーネント
    Textコンポーネント
    Text:New Text
    Width:500
    Height:200
    Color:383838 StartText
    コンポーネント

    View full-size slide

  12. DisplayText2オブジェクト
    • DisplayText1とDisplayText2は別オブジェクト
    • DisplayText2オブジェクトにはStartTextコンポーネントはない
    • 実行後はDisplayText1オブジェクトのみ変化がある
    DisplayText2を作成
    Rect Transformコンポーネント
    PosX:100
    PosY:100
    PosZ:0
    Textコンポーネント
    Text:New Text2
    Width:500
    Height:200
    Color:383838 CanvasRenderer
    コンポーネント
    DisplayText1オブジェクト
    Rect Transformコンポーネント
    PosX:100
    PosY:200
    PosZ:0
    StartText
    コンポーネント
    Textコンポーネント
    Text:New Text
    Width:500
    Height:200
    Color:383838 CanvasRenderer
    コンポーネント

    View full-size slide

  13. • https://docs.unity3d.com/ja/current/ScriptReference/GameObject.GetComponent.html
    リファレンス

    View full-size slide