Unityで神になる本 第二章 TofuGenerator


このエントリーをはてなブックマークに追加

Unityで神になる本を読んでる

scriptsがJavaScriptなのでC#で書いてみる

第二章 Tofuインスタンスを生成するscript

書籍では100個までとしているがとりあえずスタートしたら無限に生成するスクリプトが書籍風だと下記

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
27
28
29
30
31
32
33
34
35
36
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DropTofu : MonoBehaviour
{
public GameObject tofuPrefab;
int tofuCount = 0;
// Start is called before the first frame update
void Start()
{
InvokeRepeating("DropOne", 2.0f, 1.0f);
}
void DropOne()
{
tofuCount++;
GameObject go = Instantiate(tofuPrefab) as GameObject;
int px = Random.Range(-5, 5);
int pz = Random.Range(-5, 5);
go.transform.position = new Vector3(px, 7, pz);
if (tofuCount == 100)
{
CancelInvoke();
}
}
// Update is called once per frame
void Update()
{
}
}


Updateを利用すると下記, とりあえず無限に生成させてみている

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
27
28
29
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DropTofu : MonoBehaviour
{
public GameObject tofuPrefab;
float span = 0.3f;
float delta = 0;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
this.delta += Time.deltaTime;
if(this.delta > this.span)
{
this.delta = 0;
GameObject go = Instantiate(tofuPrefab) as GameObject;
int px = Random.Range(-5, 5);
int pz = Random.Range(-5, 5);
go.transform.position = new Vector3(px, 7, pz);
}
}
}

このエントリーをはてなブックマークに追加