Sorting Layer에서 "BackgroundLayer" Layer 생성
추가로 "CharacterLayer" Layer 생성
지금까지 만든 GameObject들을 Backgrounds layer로 설정
Backgroud라는 Empty Object 생성하고 mainBG를 하위계층으로 만듬
Backgrouds
mainBG
bg01
bg01
Backgrouds 밑에 있는 모든 Sprite의 SpriteRenderer 컴포넌트의 Sorting Layer를 BackgroundLayer로 선택
향후 추가되는 배경 이미지들은 Backgrounds 밑의 하위 계층으로 모아 관리할 수 있도록 함
Backgrouds Sorting Layer를 Lock해서 Scene View에서 선택되지 않도록 함
추가적으로 Enemy01 및 Astroid01의 SpriteRenderer의 Sorting Layer는 CharcterLayer로 세팅
[ Audio (Sound) ]
mainCamera에 있는 Audio Listener 확인
배경 음악 Play
Assets/Audio/Music/MainTheme.wav 복사
Hierarchy View에 music(Empty Object) 생성 (GameObject를 꼭 만들 필요 없이 mainCamera에 넣어도 무방)
Menu:Component >> Audio >> Audio Source
Audio Clip : MainTheme
Play On Awake : Check
Loop : Check
[ Hero Character 1 : Hero 기본 움직임 제어 ]
[ Rigidbody ]
캐릭터는 (1) 몸통 팔 다리 머리 등의 구분으로 제작 하는 방법과 (2) 스프라이트 시트 기반의 개별 프레임 애니메이션으로 제작이 가능
(1) 주인공 캐릭터는 몸통, 파트 등의 구분으로 제작
(2) Enemy01의 경우 이방법으로 구현
Hero에 사용되는 이미지 구성하기
Assets/Sprites/Character/hero4.png , heroPart.png 복사
Hero의 이미지를 만들 때, 여러 스프라이트로 만들어 하나의 이미지로 표현해도 됨
Inspecter View에서
Hero GameObject 생성
Empty Object를 만든 이후 Hero라고 이름을 바꿈
Hero에 필요한 모든 이미지들을 GameObject로 만든후 Hero GameObject 밑에 아래와 같은 형태로 만듬
Hero => 이미지들을 조합하여 주인공 캐릭터를 만듬
Parts => 새롭게 만든 Enmpty Object
heroPart01 => heroPart를 세개 만들어 적당하게 배치
heroPart02
heroPart03
hero4
Sprite Renderer>> Sorting Layer : Character로 설정
참고 : z값에 변화를 주면 이미지의 랜더링 순서가 결정됨
Hero 애니메이션 만들기
Parts 오브젝트가 선택된 상태에서 "New Anim" 생성
Name : PartsAnim
Animation 만들기
Animation View에서
Menu : Add Curve >> Transform >> Rotation
Rotation.z를 처음 값(0)과 끝 값(359)을 설정
Sample 값을 60에서 20으로 하거나 시간을 3초 정도로 설정
Hero 움직이게 하기
Menu : Component >> Physics 2D >> Circle Collider 추가
Material : None
Is Trigger : No Check
Radius : 0.54
Center : x : 0 : y : -0.18
Menu : Component >> Physics 2D >> Rigidbody 2D 추가
Mass : 1
Linear Drag : 0
Gravity Scale : 0
Fixed Angle : Check
Is Kinematic : No Check
Interploate : Interpolate
Sleeping Mode : Start Awake
Collision Detection : Discrete
PlayerControls.cs 만들기
GetAxis() : x, y 축과 관련된 키값을 얻어오는 함수
<Source>PlayerControls01.cs >> [공통] Part03 Source
Hero에 스크립트 삽입
Play 테스트
[ InputManager ]
Input.GetKey()
GetButton / GetButtonDown
[ Tag ]
Tag를 만드는 법
Tags & Layers 를 연다( Inspector 창의 Tag(혹은 Layer)의 선택 창을 열면 Add Tag(혹은 Layer)를 선택하면 됨)
Tag를 Enemy / Boss / Player(없는 경우 만듬) 세개를 만듬
enemy01 & asteroid01의 Tag를 Enemy로 세팅
enemyBoss의 Tag를 Boss로 세팅
Hero의 Tag를 Player로 세팅
[ 보스 만들기 ]
우주선(UFO) 만들어 보기
Assets/Sprites/_Environment/env_PlatformUfo.png 복사
env_PlatformUfo의 Inspector View
Texture Type : Sprite
Sprite Mode : Single
Packing Tag : None
Pixels To Units : 40
Hierarchy View로 이동
Inspector : Sprite Renderer>> Sorting Layer : Foregrounds
Menu:Component>>Physics 2D>>Polygon Collider 2D 추가
Is Trigger : None
Material : None
Collider Info : 생성된 콜라이더의 정보를 볼 수 있음
Vertex 위치 변경
Vertex 위치에 마우스를 올려 놓고 Shift 키를 누르고 움직이면 됨
Vertex 추가
외곽 Line에 마우스를 올려 놓고 Shift키를 누르면 정점이 (임시로) 생기며 이를 움직이면 새로운 정점이 생겨남
Vertex 삭제
삭제하고 싶은 Vertex에 마우스를 올려 놓고 Shift 키를 누른 상태에서 다시 Ctrl 키를 누르고 마우스 클릭하면 삭제 됨
[ Package ]
[ Scene 관리 및 빌드 ]
Scene 생성
File >> New Scene
Scene 전환
Application.LoadLevel() : Scene을 전환하는 함수
File >> Build Setting ...
빌드하고자 하는 씬들을 포함시켜야 함
실습 : 실습으로 Scene 전환 이해하기