-
유니티 씬 전환(이동)하기 / SceneManagement / LoadScene유니티(Unity)/유니티 코딩 2019. 2. 17. 17:00
해당 티스토리 페이지는 필자가 유니티 C# 개발을 하면서 학습한 내용들을 기록하고 공유하는 페이지입니다 !
- 틀린 부분이 있거나, 수정된 부분이 있다면 댓글로 알려주세요 !
- 해당 내용을 공유 or 퍼가도 좋으나, 출처를 꼭 명시해주세요 !
- 해당 글의 모든 저작권은 Chameleon Studio에 있습니다.
- 방문해주셔서 감사합니다 ^^
유니티 씬 전환(이동)하기
안녕하세요 카멜레온입니다 ㅎㅎ
오늘은 유니티 기능 중 하나인
씬 매니지먼트(SceneMagagement)를 사용하여,
씬을 이동해보려고 합니다.
유니티에서 씬은 하나의 맵(장면)으로 생각하시고,
씬의 이동 시,
이 맵(장면)에서 저 맵(장면)으로 넘어간다는 느낌을 줄 수 있습니다.
간단하게 씬 이동하는 법을 알아봅시다.
프로젝트 열기
우선 간단하게 예시를 들기위해서
프로젝트를 열었습니다.
지금 젤랑 오브젝트 안에
스크립트 'Jellang Jumping'을 넣었습니다.
요놈을 열어서 씬 이동 코드를 입력해봅시다.
여러분들도 스크립트가 달린 오브젝트를
준비해주시고 스크립트를 열어주세요.
이미지가 안보이시는 분들은 아래 코드 보기를 누르고 코드를 확인해주세요.
스크립트가 열렸다면
맨 위에 using UnityEngine을
선언해주고
SceneManagemet; 를
넣어주세요.
이렇게 선언을 해주어야
유니티에서 제공하는 씬 전환을
사용할 수 있습니다.
이미지가 안보이시는 분들은 아래 코드 보기를 누르고 코드를 확인해주세요.
다음으로 씬 전환 매서드인
LoadScene 매서드를 사용해보도록 합시다.
간단 예시를 보여드리기 위하여
Update문에 마우스 왼쪽 클릭이 있으면
SceneManager.LoadScene("SampleScene");
SampleSene로 씬을 전환하라고 해놓았습니다.
우선
LoadScene 매서드를 사용하는 방법으로
SceneManager.LoadScene("이동할 씬 이름")
양식으로 사용하시면 됩니다.
이제
"SampleScene"이라는 명의 씬을 만들러 갑시다.
마우스 우클릭 > Create > Scene 클릭
스크립트를 저장한 후,
Scene을 새로 하나 만들어봅시다.
만들고 싶은 폴더에서 우클릭후
Create > Scene를 눌러주세요.
SampelScene 생성
씬이 만들어졌다면,
씬 이름을
SampleScene로 변경해주세요.
씬 이름과
LoadScene("씬 이름")의
내용이 다르다면,
씬 이동이 이루어지지 않습니다.
저도 알파벳 대/소문자라던지 오타때문에
씬이 이동하지 않은 적이 몇 번 있답니다 ㅎㅎ
유니티 상단 창 > File > Build Settings 클릭
씬 이름 변경까지 끝마쳤다면,
씬을 등록해줘야합니다.
씬이 등록되어 있지 않아도
씬 이동이 이루어지지 않습니다.
유니티 상단 창에서
File > Build Settings를 눌러주세요.
Build Settings 창
현재, 맨 처음 만들어져있던
Test 씬만 등록되어 있습니다.
여기에 SampleScene을 등록합시다.
SampleScene 드래그 앤 드롭
SampleScene을 등록하는 법은 간단합니다.
그냥 아까 만들었던 Project창에 있는 SampleScene을
드래그 앤 드롭해주면 됩니다.
그냥 끌어다가 저 위에 넣어주세요.
SampleScene에서 스크립트 달린 오브젝트 생성
자,, 이제 씬 등록도 마쳤겠다,,
SampleScene에서 Test 씬으로 다시 돌아가게끔도
만들어봅시다.
SampleScene을 더블클릭해서 들어오신 후
스크립트를 가진 오브젝트를 만들어주세요.
저는 ChangeScene 오브젝트에
ChangeScene 스크립트를 넣었습니다.
넣은 스크립트를 열어주세요.
이미지가 안보이시는 분들은 아래 코드 보기를 누르고 코드를 확인해주세요.
이제 ChangeScene 스크립트 안에도
씬 이동 코드를 넣어봅시다.
using UnityEngine.SceneManagement;
선언하고,
SceneManager.LoadScene("Test");
이번엔 괄호 안의 내용을 Test로 하고 저장해주세요.
이제 유니티로 돌아와서
▶을 눌러 씬 이동이 잘 되나 확인해봅시다.
유니티를 실행한 후
Game창 위에서 마우스 왼쪽 클릭을 할 때마다
씬 전환이 되는 것을 확인했습니다.
간단 예시를 들기 위해서 마우스 클릭으로
씬 전환을 해보았는데요.
여러분들은 여러분들의 게임 특성에 맞게
씬 전환을 해보시면 좋을 것 같습니다.
여기까지 유니티 씬 전환(이동)하기에 대해 알아보았습니다.
생각보다 꽤 간단하게 구현이 가능하지요?
이상으로 포스팅을 마치며,
잘 읽으셨다면 댓글을 달아주세요.
댓글은 저에게 다음 포스팅을 위한 힘이 됩니다 ㅠ ㅠ
또, 카멜레온이 다뤘으면 좋겠다하는 포스팅 내용을 달아주시면,
해당 내용에 관한 포스팅도 해보도록 하겠습니다.
감사합니다 !
Chameleon Studio가 만든 게임하러가기
<젤랑점핑>
안드로이드- market://details?id=com.Cameleon.TangTangBall
IOS- itms-apps://itunes.apple.com/app/id1429522379
<크러쉬팡>
안드로이드- market://details?id=com.Chameleon.CrushPang
IOS- itms-apps://itunes.apple.com/app/id1450109331
'유니티(Unity) > 유니티 코딩' 카테고리의 다른 글
유니티 진동 구현 / 아이폰, 안드로이드폰 진동 (0) 2019.02.19 유니티 현재 씬 확인하기 / GetActiveScene() (2) 2019.02.18 DontDestroyOnLoad 씬 이동해도 오브젝트 유지하기 (1) 2019.02.17 유니티 로컬 저장, 불러오기 구현 / Json 세이브로드 (11) 2019.02.16 유니티 카메라 흔들기 / Camera Shake 구현의 모든 것 (4) 2019.02.15