そういうのがいいブログ

アプリ個人開発 まるブログ

アプリ開発覚え書き

【Unity初心者】テキストや画像などUIの移動方法 RectTransform

環境

Unity 2019.3.7f1

移動方法

ゲームオブジェクトなどはTransformコンポーネントをもっており、
この数値をスクリプトからいじることで移動できます。
一方、テキストなどのUIはTramsformコンポーネントではなく、
RectTransformコンポーネントを持っています。
したがってRectTransformコンポーネントの値をいじることで移動させることができます。

具体例

実際にテキストオブジェクトを動かしてみましょう。

前提の作業内容

1.新規スクリプト作成(スクリプト名は"Test"にした)
2.テキストオブジェクト作成
3.空のオブジェクト作成
4.新規スクリプトを空のオブジェクトにドラッグ&ドロップ
image.png

image.png

 スクリプト名"Test"の中身は次のように書く

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;//スクリプトでUI(テキストなど)扱うときはこれ必須!!

public class test : MonoBehaviour
{    
    public RectTransform a;//RectTransform型の変数aを宣言 作成したテキストオブジェクトをアタッチしておく
   
    //スタート関数
    void Start()
    {        
    }

    //アップデート関数
    void Update()
    {
        a.position += new Vector3(0.1f, 0, 0);//毎フレームx座標を0.1ずつプラス        
    }
}


スクリプトを書いてスクリプトセーブ後、空のオブジェクトのインスペクターはこのようになる。
image.png

この赤丸部に、あらかじめ作成したテキストオブジェクトをアタッチする。 image.png

こうすることでテキストのRectTransformコンポーネントの数値をいじれるようになる。

あとは実行するとテキストが動きます。