プログラミング”ド素人”のUnity奮闘記

プログラミングが全く分からない超絶初心者がUnityでゲームを作るために日々奮闘している所です

【Unity】Random.valueについて

更新は私生活の都合上止めておりましたが、Unityのことを考えない日は1日もありませんでした。これって恋か。。。。?♡

 

またまたUnityについて書いていきます。

今回は、Random.valueについてです。

参照記事

nn-hokuson.hatenablog.com

隕石を落とすためのスクリプトについて理解していきたいと思います。

using UnityEngine;
using System.Collections;

public class RockController : MonoBehaviour {

float fallSpeed;//←まず隕石が落ちるスピードを宣言
float rotSpeed;//←続いて隕石の回転スピードを宣言

void Start () {
this.fallSpeed = 0.01f + 0.1f * Random.value;

//fallSpeedは、落下速度という意味。

隕石落下の基準のスピードが0.01。

Random.valueは、0.1~1までの値をランダムに取り出す。

基準スピードの0.01にRandom.valueで取り出した0.1~1.0へ×0.1をした値を足すことで隕石の落下速度としている。

Random.valueを使うことで隕石落下の速度が毎回変化する。

 

this.rotSpeed = 5f + 3f * Random.value;
}
//rotSpeedは回転速度という意味。(rotはrotationの略だと思われる)

隕石の基準の回転速度5へRandom.valueで取り出した0.1~1.0へ×3をすることで、隕石の回転速度としている。

これもまた毎回隕石の回転速度が変化する。


void Update () {
transform.Translate( 0, -fallSpeed, 0, Space.World);

//transform.Translateは、物を動かす時に使用する。

transform.Trasnlate(x方向の速度,y方向の速度,z方向の速度)

Space.Worldと入力しないと、画面から見えない所で動作してしまう。


transform.Rotate(0, 0, rotSpeed );

//transform.Rotateは、物を回転させたい時に使用。

transform.Rotate(x方向の回転速度,y方向の回転速度,z方向の回転速度)


if (transform.position.y < -5.5f) {

//もし物のy方向の位置が-5.5を超えるとという意味。

Destroy (gameObject);

//上記のifが達成された時、その物を削除する。

Destroy(gameObject)と入力すると自分自身を削除。
}
}
}