[Unity] Button으로 Scene 전환하기

최예린·2021년 7월 26일
0

Unity

목록 보기
2/5

개인 프로젝트로 방치형 ASMR 게임을 만들어 보고자합니다.

런던에서 자취를 하는 컨셉의 게임으로 비가 자주오는 날씨 특성을 반영하여 창 밖에서 들려오는 빗소리가 플레이어에게 편안함을 제공합니다.
그리고 이후 다양한 요소를 추가하여 돈을 모으고 방의 인테리어를 업그레이드 하거나 새로운 가구를 추가할 수 있도록 업데이트 할 예정입니다.

참고로 이번 프로젝트는 제가 즐겨했던 비내리는 단칸방이라는 게임에서
많은 아이디어를 받았습니다.

일단 게임 제작에 앞서 단순한 사각형으로 게임 틀을 잡은 후
그래픽을 입힐 예정입니다.

중간의 회색 사각형은 플레이어 이고 플레이어 뒤의 하늘색 사각형은 창문입니다.

배경음악 삽입

먼저 저작권이 없는 빗소리 mp3 파일을 다운받아
Main Camera에 Audio Source를 추가하여 넣어주었습니다.

Scene 전환

그리고 버튼을 추가하여 창문을 클릭하면 창문을 크게 보여주는 WindowScene으로 씬 전환이 일어나도록 했습니다.

Canvas(캔버스) 설정 입니다. 맨 처음 UI>Button 을 통해 새로운 캔버스와 버튼을 생성한 후 다음과 같이 설정해 주었습니다.



Assets>Scripts 폴더에서 C# script를 새로 생성합니다.

다음과 같이 코드를 작성합니다.


CreateEmpty 후 여기에 아까 만든 C# 스크립트를 넣어줍니다.
(저는 이름을 ChangeScene으로 해주었는데 C#스크립트와 이름이 같아서 헷갈리는 것 같습니다. 다른 분들은 이름을 다르게 하셔도 좋을 것 같습니다.)


버튼으로 돌아가서 On Click() > + 클릭 > 바로 위에서 만든 ChangeScene을 넣어줍니다.

이렇게하면 버튼으로 씬 전환하기! 가 완료되었습니다.


이제 버튼(회색 사각형) 을 누르면!
(회색부분은 버튼 image입니다. 지금은 설명을 위해 보이게 설정했지만 후에 color의 불투명도를 조절하여 보이지않게 변경했습니다.)

WindowScene으로 전환이 이루어집니다.ㅎㅎ

안드로이드로 빌드해서 테스트해봤는데 스마트폰에서도 잘 동작합니다.

++

저는 처음에 버튼을 생성했을 때 화면 전환이 안되어서 원인을 찾다보니
"버튼" 레이어 보다 "Window" 레이어가 더 상위에 있어서 클릭이 안됐습니다. Window 에 들어가서 Order in Layer를 조정해주었더니 잘 동작했습니다.

-2021.07.26

  • 배경음악 삽입
  • 창문 클릭시 씬 전환 구현

-다음과제

  • 배경 검은색으로 바꾸기(16:9에서 벗어나는 바깥 부분)
  • 다음에 빌드시 자동회전 막기
  • 초기 시작화면 만들기
  • 가구 배치하기(상점에서 가구를 업그레이드 하면 가구 이미지가 바뀌도록 해야한다. 어떻게 구현할까?)
  • 상점 틀 만들기
profile
경북대학교 글로벌소프트웨어융합전공/미디어아트연계전공

1개의 댓글

comment-user-thumbnail
2022년 11월 27일

그럼 스크립트 짜는건 어떤 프로그램으로 해요?

답글 달기
Powered by GraphCDN, the GraphQL CDN