Upload
acura-netics
View
2.888
Download
6
Embed Size (px)
DESCRIPTION
서강대학교 게임교육원 동아리 선빈동 13 하계방학 스터디 Unity 3D Study - #2. 2D 슈팅 게임 만들기
Citation preview
먼저…
• Windows 사용자는 계정명을 영어로 설정해줄것 ex) 유니티 -> Unity 계정명이 한글일 경우 설치 후 100% 실행 안됨
http://cafe.naver.com/newguests/12 첨부파일 (준비물 ) 다운로드 ! ! !
캐릭터 생성 #1
• 드래곤(주인공) 만들기
GameObject – Create Other – Plane 클릭
Hierarchy 창에 Plane 생성 된다
Inspector창의
Transform 설정값
Position (0, 0, 0)
Rotation (90, 180, 0)
Scale (0.1, 0, 0.1)
캐릭터 생성 #2
Project 창에서 Create – Folder 혹은 마우스 우클릭 - Create – Folder 클릭
Texture로 이름을 짓는다. ( ※나중에 이름 변경을 원하면 윈도우:F2, 맥OS : return(엔터) 버튼으로 가능 )
예제 파일에 있는 background와 dragon을 방금 만든 Texture 폴더에 드래그로 넣는다.
캐릭터 생성 #3
Texture 폴더 안에 들어가있다.
Plane을 누른 상태에서 드래곤을 드래그 하여 Inspector의 빈 자리에 드래그 하여 넣는다.
Plane에 그림이 입혀졌다.
캐릭터 생성 #4
흰색을 투명하게 만들어보자.
Hierachy창의 Plane을 누른다. 오른쪽의 Inspector 창에 보면 맨 아래 dragon 메테리얼이 보인다. Shader 옆에 Diffuse를 누른 후 Particles – Alpha Blended 클릭
흰색 바탕이 투명해졌다.
캐릭터 생성 #5
ExamplePackage를 Project 창 안에 드래그 한다.
Project 창에서 Create – Folder 혹은 마우스 우클릭 - Create – Folder 클릭 폴더의 이름을 Script 라고 이름을 짓자.
ExamplePackage를 더블클릭하면 Import 창이 나온다. Import를 눌러 가져온다.
캐릭터 생성 #6
Plane을 누른 상태에서 CAnimation을 드래그 하여 넣는다.
Project 창의 ExamplePackage파일은 선택한 상태에서 키보드의 Delete 키를 눌러 지운다.
스크립트가 (컴포넌트로 추가된 것이) 보일 것이다.
맨 위에 재생 버튼을 눌러 실행해본다. 아무것도 안나올 것이다.
재생버튼을 다시 눌러 재생을 풀어준다.
캐릭터 생성 #7
그림이 아무리 길어도 오른쪽 끝이 1이고, 위가 1이다.
유니티에서 그림을 입히는 UV(Offset)의 범위는 다음과 같다.
Tiling은 칸을 나눈다는 뜻이고, Offset은 표시할 지점의 좌표라는 뜻이다.
캐릭터 생성 #8
화면과 동일하게 입력한다.
dragon.png를 보면 세로로는 6칸, 가로로 4칸이다. 1/6은 약 0.166이며, 1/4는 0.25다. 용을 출력 해야하기 때문에 OffsetY는 밑에서부터 5번째부터 시작하기 때문에 0.166 * 5로 해서 약 0.833이다.
Canimation 패러미터 설명
OffsetX 한번에 이동할 X좌표 크기
OffsetY 애니메이션이 시작할 위치의 y좌표
ScaleX, ScaleY 그림당 가로 세로 크기
Animation Speed 애니메이션이 되는 속도
Sprite Number 애니메이션 프레임의 개수 용 애니메이션이 진행될 것이다.
캐릭터 생성 #9
Plane이름을 Dragon으로 변경.
GameObject라는 것이 생겼을 것이다. Player로 이름을 바꿔준다.
이제 용을 방향키에 맞게 이동시켜보자.
GameObject – Create Empty 클릭
Dragon을 Player에 드래그 하여 넣는다.
Player 안에 Dragon이 들어갔다.
Player의 좌표를 0, 0, -3으로 바꾼다.
캐릭터 생성 #10
Script 폴더에서 마우스 우클릭 – Create – C# Script 클릭
MonoDevelop가 실행된다. MonoDevelop는 스크립트를 편집할 수 있는 프로그램이다.
Player라고 이름을 짓는다. 더블 클릭하여 들어간다
캐릭터 생성 #11
스크립트란?
- 사용자가 움직이거나 변형하고 싶은 물체(오브젝트)를 스크립트를 이용하여 마음대로 바꿀 수 있다.
*스크립트를 작성할 때 꼭 대소문자를 구분해줘야 한다!!!
이와 같이 작성한다.
F7을 누르면 빌드가 되고 오류가 없다면 왼쪽 밑에 성공했다는 글이 나온다.
캐릭터 생성 #12
Hierarchy 창에서 Player를 누른 상태에서 Player 스크립트를 드래그 하여 Inspector창에 넣는다. 실행을 하면 오른쪽 왼쪽 방향키에 따라 용이 좌우로 움직일 것이다. 이제 위 아래로도 움직여보자. MonoDevelop을 열어 아래와 같이 추가로 작성을 한다.
F7을 눌러 빌드를 한 후 유니티에서 실행버튼을 눌러보자. 위아래로도 움직일 것이다
배경 생성 #2
큐브의 정보를 위와 같이 입력한다.
Background 그림을 Cube에 드래그 하여 넣는다.
Particles – Alpha Blended Cube에서 Shader의 정보를 위와 같이 바꿔준다
배경 생성 #3
Project 창 - Script 폴더 – 마우스 우클릭 – Create – C# Script – 이름을 Background로 만든다. 더블클릭 하여 MonoDevelop를 켠다.
이와 같이 작성한다. F7을 눌러 빌드를 하여 성공을 하였는지 확인한다
배경 생성 #5
Project 창에 Scene이란 폴더를 만들자.
File – Save Scene 혹은 Ctrl + S를 누른다.
Assets 폴더가 나오는데, Scene 폴더가 있다. 더블클릭 하여 들어간 다음 Game이라고 저장해주자
배경 생성 #6
그럼 Project 창의 Scene 폴더 안에 Game이란 씬 파일이 생성되었다.
이처럼 각각의 씬을 만들고 저장할 수 있다.
Cube의 이름을 Background로 바꿔준다
총알 생성 #2
Hierarchy에서 Player를 누르면 Inspector 창 안에 있는 Player 스크립트에 BULLET이 추가된 것을 볼 수 있다.
Project 창의 Bullet을 드래그 하여 None이라 써있는 자리에 넣는다
적 생성 #1
GameObject – Create Empty 클릭
SpawnEnemy로 이름을 바꾼다. Spawn : (알을)낳다
SpawnEnemy의 좌표를 (0, 8, -3)으로 해준다.
적 생성 #2
Script에서 C# Script를 만들어 SpawnEnemy를 만든다
위와 같이 변수를 적는다
Enemyspawn 설정값
Enemy 생성될 적 객체
rangeX 적이 생성될 x좌표 범위
enemyTime 적이 생성되는 시간
fElapsedTime 저장될 시간 (표시시간)
적 생성 #3
Instantiate(Enemy, this.gameObject.transform.position + new Vector3(_randomX, 0, 0), Quaternion.identity); 이부분이 적을 생성하는 코드이다.
F7을 눌러 빌드를 한다. 오류가 없다면 왼쪽 아래에 Build Success가 나올 것이다.
적 생성#4
Hierarchy 창의 SpawnEnemy를 선택 후 Project창의 SpawnEnemy를 Inspector창에 드래그를 한다. Inspector창에서 RangeX와 EnemyTime의 수치를 바꿀 수 있다.
Project창의 Enemy를 드래그 하여 None으로 되어있는 자리에 넣는다. 실행을 하면 적이 미사일을 쏘면서 내려오는 것을 볼 수 있다.
플레이어 충돌 #1
실행을 하면 헬리콥터가 쏘는 미사일에는 용이 맞지 않는 것을 볼 수 있다. 먼저 물리 설정을 해준다.
Player를 누른 상태에서 Component – Physics – Rigidbody 클릭
Player에 Rigidbody가 추가되었다. Use Gravity의 체크를 해제해준다. 이것은 중력을 사용하겠다는 설정인데, 필요 없으므로 과감하게 체크 해제!
플레이어 충돌 #2
이제 충돌체크 설정을 하자.
Component – Physics – Box Collider를 눌러준다
Player에게 BoxCollider가 추가되었다.
Is Trigger를 꼭 체크를 해주어야 한다.
Is Trigger는 다른 물체와 부딪혔을 때 밀리지 않고 그냥 지나가게 만들어준다. 미사일과 부딪혔을 때 밀리면 안되기 때문.
플레이어 충돌 #3
Scene 창에서 Box collider의 충돌 범위를 볼 수 있다. Inspector창에서 Size를 조절하면 충돌박스의 크기를 조절할 수 있다.
( 0.5, 0.5, 1)로 설정
플레이어 충돌 #4
Player의 Inspector창에서 Tag 옆에 Untagged를 누르면 Player라고 있을 것이다. Player를 클릭. 실행하면 Player도 헬리콥터의 미사일에 맞아서 없어지는 것을 볼 수 있다.
해상도 맞추기 #6
Y Axis
FieldOfView Near Clipping Plane
Far Clipping Plane
Y Axis
Size
Near Clipping Plane
Far Clipping Plane
원근(Perspective) 직교(Orthographic)
사운드 입히기 #3
Play On Awake와 Loop를 체크한다. Play On Awake는 씬이 시작될 때 재생되고, Loop는 노래가 끝나면 처음부터 다시 재생되는 기능이다.
빌드 하기 #2
Build And Run을 선택하고 빌드할 파일 이름을 입력하고 저장을 누르면 빌드가 된다 빌드가 완료되면 빌드명.exe 파일과 빌드명_Data 폴더가 생긴다.
빌드명.exe를 선택하면 게임을 구동할 수 있다.