와챠의 우당탕탕 코딩 일기장
[유니티] 스파르타 코딩 : 게임 개발 - 4주차 본문
반응형
화면 늘리느라 배경 사이즈도 좀 바꿨는데 바닥만 안 건드렸더니 바닥이 둥 떠있음...ㅋ
스플래시 화면도 그냥 있는 이미지로 만들어봤다.
오늘 한 것
- 여러 Scene 만들기
- UGUI 이론/실습
- 버튼
- 팝업
- 이미지
- 텍스트
- 스플래시 만들기
- 로딩 씬 만들기
오늘 배운 것 정리
- Scene (씬)
- 다양한 장면(로비 화면, 게임 화면 등...) 구성
- SceneManager 클래스 : 씬 이름, 씬 순서 입력으로 씬 변경 가능
- SceneManager.LoadScene("GameScene");
- 씬 순서는 Build Setting 에서 확인 가능
- 씬 추가는 프로젝트 공간에서 Create > Scene
- Build Setting에서 Add Open Scenes로 추가된 씬 적용(안드로이드에서 액티비티 추가된 거 매니페스트에 알리듯이...)
- 로딩 씬
- SceneManager.LoadSceneAsync() 사용!
- 위 함수의 반환값 : 로딩 진행 정도
- 코루틴도 사용...(Update 비슷)
- allowSceneActivation = false : 로딩 후 바로 씬 전환 방지
- SceneManager.LoadSceneAsync() 사용!
- Splash Screen
- Edit > Project Settings... > Player > 안드로이드 그림 > 밑에 쭉 내리면 Splash Image 에서 설정
- Logos에서 +눌러서 추가
- Preview 눌러서 적용 화면을 미리 볼 수 있음
- 세부 내용
- Show Splash Screen 체크박스 : 스츨래쉬 이미지를 띄울지 말지?
- Unity Personal 버전이라면 옵션 해제할 수 없음
- Splash Style
- Dark on Light : 밝은 화면에서 어두운 로고 나옴
- Light on Dark : 어두운 화면에서 밝은 로고 나옴
- Animation
- Statis : 애니메이션 X
- Dolly : 로고 화면 확대
- Custom : Dolly와 동일 + 확대 정도 설정 가능
- Logos
- Show Unity Logo : 유니티 로고 띄울지 말지?
- Draw Mode
- Unity Logo Below : 로고 한꺼번에 보이기
- All Sequential : 로고 하나씩 보이기
- Background
- Overlay Opacity :
- Background Color : 배경 이미지 없을 때의 색상
- Blur Background Image : 배경 블러처리 설정
- Background Image : 배경 이미지 설정
- Show Splash Screen 체크박스 : 스츨래쉬 이미지를 띄울지 말지?
- UGUI
- UGUI 쉽게 추가하기 위한 Unity기능
- UI : User Interface : 게임에서 플레이어에게 게임 내의 정보를 전달하는 매개체
- GUI : Grapic 기반의 UI
- Canvas
- Canvas에 UI를 올려놓는 방식
- 첫 번째 UI는 두 번째 UI에 가려지는 계층구조를 가짐
- 스크린 공간(Screen Space - Overlay)
- 기본 설정
- 화면에 존재하는 모든 것 위에 얹혀서(Overlay) 그려짐
- Overlay 유지를 위해 스크린과 캔버스 크기가 같아야함
- 스크린 공간(Screen Space - Camera)
- Screen Space - Overlay와 비슷
- 화면 위에 얹혀지는 것이 아니라, 카메하 위에 얹혀지는 것임
- Render Camera 에 대상이 될 카메라를 지정 가능
- 월드 공간(World Space)
- 해당 캔버스를 실제 공간에 배치할 수 있음
- UI
- Hierarchy에서 우클릭 > UI > 으로 추가
- Image
- Text
- Button
- Image 자동 추가
- OnClick의 + 이용해서 클릭 동작 구현 가능(해당 오브젝트 드래그 해야함)
- 눌러졌을 때의 버튼 이미지 추가하라면 Color Tint를 Sprite Swap 으로 변경
- Pressed Sprite 에서 눌러진 이미지 설정
- 팝업
- 리소스는 Unity Asset Store에서 무료로 얻을 수 있음(유로도 있음)
- Preserve Aspect : 가로세로 비율 원본과 동일하게
- 씬 로드 시 팝업 닫혀있게 : public void Awake() { OnPopupClose(); }
- 팝업 보이기 : this.gameObject.SetActive(true);
- 팝업 안 보이기 : this.gameObject.SetActive(false);
- RectTransform : 부모 RectTransform 기준의 상대적 위치, 상대적 크기 설정 가능
- 다양한 해상도에 대응 가능!
- Pivot : 포지션 값의 기준이 되는 상대적 위치
- Anchor : 해당 UI의 부모 캔버스와 별도로 배치될 공간의 상대적 크기
- RectTransform : 부모 RectTransform 기준의 상대적 위치, 상대적 크기 설정 가능
- 리소스는 Unity Asset Store에서 무료로 얻을 수 있음(유로도 있음)
- EventSystem : 해당 UI가 사용자 입력 정보와 상호작용하기 위함
- UGUI 쉽게 추가하기 위한 Unity기능
반응형
'코딩 일기장 > Unity' 카테고리의 다른 글
[Unity] 3D 장애물 런게임 만들기(c# 스트립트 없이) (0) | 2021.10.24 |
---|---|
[유니티] 스파르타 코딩 : 게임 개발 - 5주차(마지막) (0) | 2021.06.23 |
[유니티] 스파르타 코딩 : 게임 개발 - 3주차 (0) | 2021.06.19 |
[유니티] 스파르타 코딩 : 게임 개발 - 2주차 (0) | 2021.06.08 |
[유니티] 스파르타 코딩 : 게임 개발 - 1주차 (0) | 2021.06.07 |
Comments