게임 개발 로그
Flappy Brid 본문


Flappy Bird
0. 구현

0-1. Spawner
public class PipeSpawner : MonoBehaviour { public GameObject pipePrefab; public float interval = 1.0f; public float range = 2.5f; private void Start() { StartCoroutine("SpawnPipe"); } IEnumerator SpawnPipe() { while (true) { yield return new WaitForSeconds(interval); Instantiate(pipePrefab, new Vector3(transform.position.x, Random.Range(-range, range), transform.position.z), transform.rotation); } } }
- Spawner에서 일정 시간마다 해당 위치에 Pipe를 생성한다.
- Pipe는 매 틱마다 왼쪽으로 이동하는 프리팹이다.
0-2. Endline
public class Endline : MonoBehaviour { private void OnCollisionEnter(Collision collision) { Destroy(collision.gameObject); } }
- 화면 밖에 Endline을 배치하여 Endline에 오브젝트가 닿으면 없어지도록 간단하게 구현했다.
0-3. FloatingUI
public class FloatingUI : MonoBehaviour { [SerializeField] public TextMeshProUGUI getScore; public int speed = 20; void Update() { getScore.alpha -= Time.deltaTime; getScore.transform.position += new Vector3(0, Time.deltaTime * speed, 0); if ( getScore.alpha <= 0 ) Destroy(gameObject); } public void SetPos(Vector3 pos) { getScore.transform.position = new Vector3(getScore.transform.position.x, pos.y, getScore.transform.position.z); } }
- FloatingUI는 점수 획득 시 뜨는 GetScoreUI 와 게임오버 시 뜨는 GameOverUI 에 사용한다.
- 플레이어 위치를 스크린 좌표로 변경하여, 플레이어 위치에서 UI가 뜨도록 한다.
- 시간에 따라 알파값이 변해 점점 옅어지며, 안 보이게 되면 오브젝트를 삭제한다.
'게임 개발 > 미니게임' 카테고리의 다른 글
미니게임: 미로 숨바꼭질 (0) | 2024.12.09 |
---|---|
미니게임: Carrot Flight (0) | 2024.11.21 |