あるオブジェクトのScaleを変更すれば、それに合わせて、もう一方のオブジェクトサイズが変わるようにしましょう。
十字キーでCubeのスケールを変えれば、Sphereのサイズも変化していきます。
Sphereオブジェクトを取得し、Cubeのサイズをそのまま適用しています。
関連記事:
ぶつかったオブジェクトと同じサイズにする
他のスクリプトの変数を取得する
他のスクリプトの関数を実行する方法
他のマテリアルを変数として取得する
他のオブジェクトの回転を変数として取得
キー操作でオブジェクトのサイズを変える
Resources.Loadを使ったファイル指定
Sphereを取得してサイズ変更
CubeとSphereを作成して、横並びに配置します。
CubeScale.csを作成し、Cubeに追加します。
CubeScale.csを記述します。
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 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CubeScale : MonoBehaviour { private float cubeSize = 1.0f; private GameObject sphere; void Start() { sphere = GameObject.Find ("Sphere"); } void Update() { if(Input.GetKeyDown(KeyCode.UpArrow) && cubeSize < 3.0f) cubeSize += 0.5f; if(Input.GetKeyDown(KeyCode.DownArrow) && cubeSize > 1.0f) cubeSize -= 0.5f; this.transform.localScale = new Vector3(cubeSize, cubeSize, cubeSize); sphere.transform.localScale = this.transform.localScale; } } |
プレイしてみましょう。
十字キーの上を押せば、Cubeが拡大し、それに合わせてSphereも拡大。
下を押せば、Cubeが縮小し、合わせてSphereも縮小します。
関連記事:
ぶつかったオブジェクトと同じサイズにする
他のスクリプトの変数を取得する
他のスクリプトの関数を実行する方法
他のマテリアルを変数として取得する
他のオブジェクトの回転を変数として取得
キー操作でオブジェクトのサイズを変える
Resources.Loadを使ったファイル指定