반응형
728x170
사실 저번에 랜덤위치에서 생성되게 했지만
솔직히 어떠한 조건을 만들어서 그 조건에 맞을 때 생성되게 하는 것은 정말 귀찮은 일이다.
++ 귀찮아서 메서드 만드는 것에 축하하며
그래서 이번에는 주기적으로 반복시키려고 한다. 마침 Unity에 유용한 메서드가 있다.
InvokeRepeating이란 메서드다.
{
public GameObject[] animalPrefab;
private float spawnRangeX = 20f;
private float spawnposZ = 20;
private float startDelay = 2;
private float spawnInterval = 1.5f;
// Start is called before the first frame update
void Start()
{
InvokeRepeating("SpawnRandomAnimal", startDelay, spawnInterval);
}
// Update is called once per frame
void Update()
{
}
void SpawnRandomAnimal()
{
Vector3 spawnPos = new Vector3(Random.Range(-spawnRangeX, spawnRangeX), 0, spawnposZ);
int animalIndex = Random.Range(0, animalPrefab.Length);
Instantiate(animalPrefab[animalIndex], spawnPos, animalPrefab[animalIndex].transform.rotation);
}
}
이 메서드를 알아보자면
역시 스샷은 안좋아
Invokes the method methodName in time seconds, then repeatdly every repeatRate seconds.라고 쓰여있다.
InvokeRepeating("실행시키고 싶은 메서드이름", "메서드를 실행하는 시간", "주기")라고 볼 수 있다.
결과물을 볼까?
하지만 결과물을 더 잘보기위해 나는 시간 간격을 줄여보았다.
오 굿굿
728x90
반응형
그리드형
'Game Development, 게임개발 > 개발' 카테고리의 다른 글
Physics Material에 대한 것 [Unity] (0) | 2021.03.02 |
---|---|
시점에 따라 좌표축 바꾸기, Local Coordinates [Unity] (0) | 2021.03.01 |
Prefab,프리팹을 이용해서 Random Spawn, 랜덤 생성해보기 [Unity] (0) | 2021.02.25 |
Prefab(ricate), 프리팹이란? [Unity] (2) | 2021.02.25 |
Update(), FixedUpdate(), LateUpdate()의 차이 [Unity] (0) | 2021.02.24 |