본문 바로가기

일시정지4

게임개발 중급(99) - Monster Killer(61) Monster Killer오늘부터 올라오는 몬스터 킬러 내용은 이미 구현된 내용들이며, 진행된 순서대로 글이 올라간다고 생각하시면 됩니다. 버그 수정우선적으로 발견된 버그에 대해서 수정하는 작업을 시작했습니다. 피드백에서 발견된 버그는 두가지로, 첫번째는 일시정지 버튼과 ESC키의 동시 조작에 관련된 버그였습니다. 일시정지 버튼을 눌러 정지시키면 해당 화면에 홈버튼이 있고 홈버튼을 누르면 메인 씬으로 이동하게 되는데, 이 과정에서 약 1초간 페이드 아웃을 거칩니다. 그런데 그 사이에 ESC키를 누르면 타임스케일을 통해 게임을 정지시키기 때문에 화면이 정지하여 더이상 게임을 진행할 수 없는 상태가 되는 것입니다. 이 문제는 ESC키와 일시정지 버튼 두 가지의 일시정지 기능을 동일하게 넣어놓았기 때문에 발생.. 2024. 10. 14.
게임개발 중급(68) - Monster Killer(30) Monster Killer(30) 저번에는 메인씬에서 게임씬으로 버튼클릭을 통해 이동하는 것을 해보았습니다. 오늘은 일시정지 기능과 함께 일시정지 할 때 등장하는 화면을 구성해보도록 하겠습니다. 일시정지 UI 만들기 이전에 메인페이지를 만들 때 사용했던 Stone UI를 사용해서 일시정지 버튼을 만들겠습니다. 그리고 버튼클릭과 함께 ESC 키를 사용하면 일시정지가 되도록 기능을 만들겠습니다. 이렇게 두가지로 구성하는 이유는 버튼은 모바일 폰으로 게임을 하는 사용자에게 적합하고 ESC키는 컴퓨터로 플레이하는 유저에게 적합하기 때문입니다. 게임화면 좌측 상단에 일시정지 버튼이 위치하도록 만들어 주었습니다. 이제 일시정지가 되면 Pause가 되었다고 유저가 직관적으로 알 수 있게 해주는 화면을 만들어 줄 것 .. 2023. 7. 3.
게임개발 중급(67) - Monster Killer(29) Monster Killer(29) 저번시간에는 게임을 시작했을 때 가장 처음 등장하는 시작화면을 구성하는 것을 해보았습니다. 오늘은 시작화면의 버튼의 기능을 만들어주도록 하겠습니다. 게임시작 버튼 using UnityEngine; using UnityEngine.SceneManagement; public class GameStartButton : MonoBehaviour { private void Start(){ GetComponent().onClick.AddListener(GameStart); } private void GameStart(){ SceneManager.LoadScene("GameScene"); } } 이전에 게임 재시작버튼을 만들었을 때와 비슷한 방식을 사용하여 씬 전환을 해보도록 하겠습.. 2023. 7. 2.
게임개발 중급(15) - 2D 플랫포머 게임 만들기(10) 2D 플랫포머 게임 만들기(10) 저번에는 장애물을 설치하고 플레이어가 닿으면 죽으며, 정해진 목숨을 전부 사용하면 게임오버가 되도록 게임을 설계해 보았습니다. 아직 게임 자체를 멈추진 못하지만, 플레이를 할 수 없는 상태로는 만들었습니다. 이번에는 게임 자체를 멈출 수 있는 방법에 대해 한번 알아보고, 고정된 위치에 있는 장애물이 아닌, 움직이는 장애물을 한번 만들어 보겠습니다. 게임 멈추기 게임의 진행을 멈추는 방법은 의외로 어렵지 않습니다. Time.timeScale 값을 변경하여 게임 시간을 조절할 수 있습니다. 이 방법은 게임을 느리게하거나 빠르게할 때 사용합니다. Time.timeScale 값을 0으로 설정하면 게임이 멈추고, 1보다 큰 값을 설정하면 게임이 빨라집니다. 그렇다면 life가 0.. 2023. 5. 5.