티스토리 뷰
드디어 게임이라고 할 수 있는 것을 완성했다. 한달정도 되었는데, 별거는 없지만 뿌듯하다.
조금씩 게임 개발에 더 가까워지는 느낌이랄까. 나중에 게임 내장된 웹페이지 같은 것도 만들어서 배포해보고 싶다.
Gamelog 08. 미니 게임 완성했다.
게임은 여러 개의 Scene으로 이루어져 있다. (EX_ 타이틀, 게임 오버 등)
Scene 전환
1. 현재의 Scene을 저장한다.
씬을 저장한다. Save
를 누르면 저장되며, 새로운 이름으로 저장할 경우 Save As...
를 사용하여 저장한다.
처음에 생성되는 SampleScene
을 MainScene
으로 변경하여 저장했다.
Project창의 Scenes
에서 저장한 mainScene
을 확인할 수 있다.
게임 오브젝트와 배치 등의 내용이 저장된다.
2. 새로운 Scene을 만들고, 게임 오브젝트를 배치한다.
New Scene
으로 새로운 Scene을 만들어준다.
2D 게임을 공부하고 있으므로, 2D를 선택하여 Scene을 생성한다.
모든 게임 오브젝트가 초기화 되고, 새로 게임 오브젝트를 배치해야 한다.
저장하지 않은 상태이므로 Untitled
의 Scene이름을 Hierachy에서 확인할 수 있으며, 상태표시줄에도 Untitled
로 나타남을 확인할 수 있다.
3. GameOver Scene 만들기
Untitled
상태에서 Ctrl+S
를 눌러 Scene을 저장할 수 있다.
gameoverScene을 저장해봤다.
gameover Scene은 게임오버 오브젝트만 먼저 배치했다.
프로젝트 뷰에서 gameoverScene이 추가 저장되어 있음을 알 수 있다.
Scene의 더블클릭으로 Scene을 전환할 수 있다.
4. Build Setting 추가
Build Settings에서 사용할 Scene을 설정할 수 있다.
사용하지 않은 Scene은 오른쪽 클릭하여 Remove Selection
으로 삭제해야 한다.
게임에 어플로 보낼 때는 Scenes In Build
의 위부터 차례대로 실행된다.
Scene을 추가하는 방법은, Add Open Scenes
를 클릭하여도 되지만, Project 뷰에 있는 Scene을 드래그하여 추가할 수도 있다. (이게 훨씬 간편!)
5. Scene 전환 스크립트
using UnityEngine.SceneManagement; // 씬 전환에 필요
SceneManager.LoadScene(씬이름);
버튼을 누르면 씬이 전환하는 구조
public string sceneName;
void OnMouseDown() {
SceneManager.LoadScene(sceneName);
}
Start 버튼을 누르면 mainScene
으로 전환하게 한다.
이때, Box Collider 2D
컴포넌트도 추가가 필요하며, 전환할 Scene Name에 mainScene
을 넣어 세팅한다.
Build Settings에도 새로 추가한 startScene
을 넣어준다.
그러고 게임을 시작해보면, Start
버튼을 누르면 Scene이 전환되는 것을 볼 수 있다.
충돌하면 씬이 전환하는 구조
public string targetObjectName;
public string sceneName;
void OnCollisionEnter2D(Collision2D collision) {
if (collision.gameObject.name == targetObjectName) {
SceneManager.LoadScene(sceneName);
}
}
유령에게 Box Collider 2D를 설정해준다.
캐릭터에게 어떤 오브젝트와 부딪힐 때 어떤 씬으로 전환할 것인지 설정해준다.
부딪혀야 하므로, Box Collider 2D와 Rigidbody 2D를 추가해준다.
부딪히면, gameoverScene으로 전환하기로 해주고 실행해본다.
드디어 게임같은 구조 완성!
유령에 RigidBody 2D 추가하고, Chase 스크립트도 추가해서 쫓아가도록 해서 조금 더 게임같이 만들어줬다.
'프로그래밍 > Unity' 카테고리의 다른 글
Gamelog 10. 중력을 이용해본다 (0) | 2023.02.06 |
---|---|
Gamelog 09. 뭔가 하는 느낌이다. (0) | 2023.02.05 |
Gamelog 07. 드디어 움직인다. (0) | 2023.01.28 |
Gamelog 06. Main Camera를 지웠다. (0) | 2023.01.28 |
Gamelog 05. 쉬운게 역시 재밌다. (0) | 2023.01.25 |