SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Downloaden Sie, um offline zu lesen
Unity 3D Study
선빈동 13 하계방학 스터디
자료제작 초안 : 최인규
편집 : 김현우 (Acura Netics)
#2. 2D Shooting Game 만들어보기
목 차
• 2D Shooting Game 만들기
– 캐릭터 생성
– 배경 생성
– 총알 생성
– 적 생성
– 플레이어 충돌
– 해상도 맞추기
– 사운드 입히기
먼저…
• 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을 눌러 빌드를 한 후 유니티에서 실행버튼을 눌러보자. 위아래로도 움직일 것이다
배경 생성 #1
Game 창에서 화면 사이즈를 1024x768로 선택한다. 게임의 해상도를 정하는 설정이다.
GameObject – Create Other – Cube 클릭
배경 생성 #2
큐브의 정보를 위와 같이 입력한다.
Background 그림을 Cube에 드래그 하여 넣는다.
Particles – Alpha Blended
Cube에서 Shader의 정보를 위와 같이 바꿔준다
배경 생성 #3
Project 창 - Script 폴더 – 마우스 우클릭 – Create – C# Script – 이름을 Background로 만든다.
더블클릭 하여 MonoDevelop를 켠다.
이와 같이 작성한다.
F7을 눌러 빌드를 하여 성공을 하였는지 확인한다
배경 생성 #4
Cube를 선택한 상태에서 Background 스크립트를 드래그 하여
Cube의 Inspector 창에 넣는다.
재생을 하면 배경이 움직일 것이다.
배경 생성 #5
Project 창에 Scene이란 폴더를 만들자.
File – Save Scene 혹은 Ctrl + S를 누른다.
Assets 폴더가 나오는데, Scene 폴더가 있다.
더블클릭 하여 들어간 다음 Game이라고 저장해주자
배경 생성 #6
그럼 Project 창의 Scene 폴더 안에 Game이란 씬 파일이 생성되었다.
이처럼 각각의 씬을 만들고 저장할 수 있다.
Cube의 이름을 Background로 바꿔준다
총알 생성 #1
Player 스크립트를 연다
변수를 추가한다.
Update()안에 위와 같이 추가한다.
총알 생성 #2
Hierarchy에서 Player를 누르면
Inspector 창 안에 있는 Player 스크립트에 BULLET이 추가된 것을 볼 수 있다.
Project 창의 Bullet을 드래그 하여 None이라 써있는 자리에 넣는다
총알 생성 #3
BULLET이 들어간 모습
실행을 하고 스페이스를 누르면 불을 쏘는 것을 볼 수 있다
적 생성 #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도 헬리콥터의 미사일에 맞아서 없어지는 것을 볼 수 있다.
해상도 맞추기 #5
Hierarchy의 Main Camera를 누른다.
Projection을 Perspective에서 Orthographic으로 바꾼다.
Size는 5로 바꾼다.
해상도 맞추기 #6
Y Axis
FieldOfView
Near
Clipping
Plane
Far
Clipping
Plane
Y Axis
Size
Near
Clipping
Plane
Far
Clipping
Plane
원근(Perspective) 직교(Orthographic)
사운드 입히기 #1
Sound 폴더를 만든다.
예제 파일에있는 BGM을 드래그 하여 넣는다
사운드 입히기 #2
Main Camera를 선택 후 BGM 사운드 파일을 드래그 하여
Inspector 탭에 넣는다
사운드 입히기 #3
Play On Awake와 Loop를 체크한다. Play On Awake는 씬이 시작될 때
재생되고, Loop는 노래가 끝나면 처음부터 다시 재생되는 기능이다.
빌드 하기 #1
File에서 Build Setting을 선택한다.
빌드 하기 #2
Build And Run을 선택하고 빌드할 파일 이름을 입력하고 저장을 누르면 빌드가 된다
빌드가 완료되면 빌드명.exe 파일과 빌드명_Data 폴더가 생긴다.
빌드명.exe를 선택하면 게임을 구동할 수 있다.
END! 다 음 시 간 : 3 D 게 임 만 들 기 준 비
숙 제 : 오 늘 배 웠 던 내 용 1 회 복 습

Weitere ähnliche Inhalte

Was ist angesagt?

유니티로 flappy brid 만들기(Unity 5.1)
유니티로 flappy brid 만들기(Unity 5.1)유니티로 flappy brid 만들기(Unity 5.1)
유니티로 flappy brid 만들기(Unity 5.1)Changwon National University
 
Flappy bird 만들기 세미나 자료(유니티 4.3버전)
Flappy bird 만들기 세미나 자료(유니티 4.3버전)Flappy bird 만들기 세미나 자료(유니티 4.3버전)
Flappy bird 만들기 세미나 자료(유니티 4.3버전)Changwon National University
 
Port polio게임소개
Port polio게임소개Port polio게임소개
Port polio게임소개Seo YoungHoon
 
Port polio게임 소개
Port polio게임 소개Port polio게임 소개
Port polio게임 소개Seo YoungHoon
 
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템2D RPG 개발 이론 + 티뮤리티 개발 포스트모템
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템WooSung Jeon
 
디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해Je Lyoung Kim
 
유니티 Rpg게임배경 스타트업 첫번째자료
유니티 Rpg게임배경 스타트업 첫번째자료유니티 Rpg게임배경 스타트업 첫번째자료
유니티 Rpg게임배경 스타트업 첫번째자료Je Lyoung Kim
 
유니티 고급 과정 -1-
유니티 고급 과정 -1-유니티 고급 과정 -1-
유니티 고급 과정 -1-Kiyoung Moon
 
유니티 Rpg게임배경 스타트업 두번째 스터디자료
유니티 Rpg게임배경 스타트업 두번째 스터디자료유니티 Rpg게임배경 스타트업 두번째 스터디자료
유니티 Rpg게임배경 스타트업 두번째 스터디자료Je Lyoung Kim
 
introduce unity3D and playmaker basic
introduce unity3D and playmaker basicintroduce unity3D and playmaker basic
introduce unity3D and playmaker basicquxn6
 
유니티 시작하기 - 유니티에 대해, 실행하는 법, 기본 용어, 조작법, 개념 설명
유니티 시작하기 - 유니티에 대해, 실행하는 법, 기본 용어, 조작법, 개념 설명유니티 시작하기 - 유니티에 대해, 실행하는 법, 기본 용어, 조작법, 개념 설명
유니티 시작하기 - 유니티에 대해, 실행하는 법, 기본 용어, 조작법, 개념 설명주형 고
 
120513 unity3 d_start_skyseer
120513 unity3 d_start_skyseer120513 unity3 d_start_skyseer
120513 unity3 d_start_skyseerChan-hyun Park
 
Unity cookbook 1
Unity cookbook 1Unity cookbook 1
Unity cookbook 1Jihun Soh
 
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효Sunhyo Jung
 
유니티 기초 - 유니티 설치부터 스크립팅까지 익히기
유니티 기초 - 유니티 설치부터 스크립팅까지 익히기유니티 기초 - 유니티 설치부터 스크립팅까지 익히기
유니티 기초 - 유니티 설치부터 스크립팅까지 익히기주형 고
 
[150523] live2d 그녀들을 움직이게 하는 기술
[150523] live2d 그녀들을 움직이게 하는 기술[150523] live2d 그녀들을 움직이게 하는 기술
[150523] live2d 그녀들을 움직이게 하는 기술MinGeun Park
 
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발MinGeun Park
 
Unity cookbook 14
Unity cookbook 14Unity cookbook 14
Unity cookbook 14Jihun Soh
 

Was ist angesagt? (20)

유니티로 flappy brid 만들기(Unity 5.1)
유니티로 flappy brid 만들기(Unity 5.1)유니티로 flappy brid 만들기(Unity 5.1)
유니티로 flappy brid 만들기(Unity 5.1)
 
iOS7 Sprite Kit을 이용한 게임 개발
iOS7 Sprite Kit을 이용한 게임 개발iOS7 Sprite Kit을 이용한 게임 개발
iOS7 Sprite Kit을 이용한 게임 개발
 
Flappy bird 만들기 세미나 자료(유니티 4.3버전)
Flappy bird 만들기 세미나 자료(유니티 4.3버전)Flappy bird 만들기 세미나 자료(유니티 4.3버전)
Flappy bird 만들기 세미나 자료(유니티 4.3버전)
 
Port polio게임소개
Port polio게임소개Port polio게임소개
Port polio게임소개
 
Unity 시작하기
Unity 시작하기Unity 시작하기
Unity 시작하기
 
Port polio게임 소개
Port polio게임 소개Port polio게임 소개
Port polio게임 소개
 
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템2D RPG 개발 이론 + 티뮤리티 개발 포스트모템
2D RPG 개발 이론 + 티뮤리티 개발 포스트모템
 
디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해
 
유니티 Rpg게임배경 스타트업 첫번째자료
유니티 Rpg게임배경 스타트업 첫번째자료유니티 Rpg게임배경 스타트업 첫번째자료
유니티 Rpg게임배경 스타트업 첫번째자료
 
유니티 고급 과정 -1-
유니티 고급 과정 -1-유니티 고급 과정 -1-
유니티 고급 과정 -1-
 
유니티 Rpg게임배경 스타트업 두번째 스터디자료
유니티 Rpg게임배경 스타트업 두번째 스터디자료유니티 Rpg게임배경 스타트업 두번째 스터디자료
유니티 Rpg게임배경 스타트업 두번째 스터디자료
 
introduce unity3D and playmaker basic
introduce unity3D and playmaker basicintroduce unity3D and playmaker basic
introduce unity3D and playmaker basic
 
유니티 시작하기 - 유니티에 대해, 실행하는 법, 기본 용어, 조작법, 개념 설명
유니티 시작하기 - 유니티에 대해, 실행하는 법, 기본 용어, 조작법, 개념 설명유니티 시작하기 - 유니티에 대해, 실행하는 법, 기본 용어, 조작법, 개념 설명
유니티 시작하기 - 유니티에 대해, 실행하는 법, 기본 용어, 조작법, 개념 설명
 
120513 unity3 d_start_skyseer
120513 unity3 d_start_skyseer120513 unity3 d_start_skyseer
120513 unity3 d_start_skyseer
 
Unity cookbook 1
Unity cookbook 1Unity cookbook 1
Unity cookbook 1
 
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효
 
유니티 기초 - 유니티 설치부터 스크립팅까지 익히기
유니티 기초 - 유니티 설치부터 스크립팅까지 익히기유니티 기초 - 유니티 설치부터 스크립팅까지 익히기
유니티 기초 - 유니티 설치부터 스크립팅까지 익히기
 
[150523] live2d 그녀들을 움직이게 하는 기술
[150523] live2d 그녀들을 움직이게 하는 기술[150523] live2d 그녀들을 움직이게 하는 기술
[150523] live2d 그녀들을 움직이게 하는 기술
 
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발
 
Unity cookbook 14
Unity cookbook 14Unity cookbook 14
Unity cookbook 14
 

Ähnlich wie Unity 3d study #2

Unity cookbook 2
Unity cookbook 2Unity cookbook 2
Unity cookbook 2Jihun Soh
 
경남과학고등학교 프로그래밍 멘토링 플로우차트
경남과학고등학교 프로그래밍 멘토링 플로우차트경남과학고등학교 프로그래밍 멘토링 플로우차트
경남과학고등학교 프로그래밍 멘토링 플로우차트Do Hoerin
 
Aug 17th, 2023: Case Studies - Examining Gamification through Virtual/Augment...
Aug 17th, 2023: Case Studies - Examining Gamification through Virtual/Augment...Aug 17th, 2023: Case Studies - Examining Gamification through Virtual/Augment...
Aug 17th, 2023: Case Studies - Examining Gamification through Virtual/Augment...ssuser4b1f48
 
Unity cookbook 5
Unity cookbook 5Unity cookbook 5
Unity cookbook 5Jihun Soh
 
Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2Cody Yun
 
Case Studies - The Role of Computer Graphics (CG) in Movie Post-production.pdf
Case Studies - The Role of Computer Graphics (CG) in Movie Post-production.pdfCase Studies - The Role of Computer Graphics (CG) in Movie Post-production.pdf
Case Studies - The Role of Computer Graphics (CG) in Movie Post-production.pdfssuser2624f71
 
Postmortem: Frozenbyte's Trine
Postmortem: Frozenbyte's TrinePostmortem: Frozenbyte's Trine
Postmortem: Frozenbyte's TrineSeo Kyung Jung
 
Gunshooting level design_1_1.00
Gunshooting level design_1_1.00Gunshooting level design_1_1.00
Gunshooting level design_1_1.00Ray Park
 
[NDC_16] 캐릭터 한 달에 하나씩 업데이트 하기 : '최강의 군단' 스킬 개발 툴 포스트 모템과 차기작 '건파이트 맨션' 툴 프리뷰
[NDC_16] 캐릭터 한 달에 하나씩 업데이트 하기 : '최강의 군단' 스킬 개발 툴 포스트 모템과 차기작 '건파이트 맨션' 툴 프리뷰[NDC_16] 캐릭터 한 달에 하나씩 업데이트 하기 : '최강의 군단' 스킬 개발 툴 포스트 모템과 차기작 '건파이트 맨션' 툴 프리뷰
[NDC_16] 캐릭터 한 달에 하나씩 업데이트 하기 : '최강의 군단' 스킬 개발 툴 포스트 모템과 차기작 '건파이트 맨션' 툴 프리뷰승민 백
 
Colosseum 파프리카 기획서_김기웅
Colosseum 파프리카 기획서_김기웅Colosseum 파프리카 기획서_김기웅
Colosseum 파프리카 기획서_김기웅kiwoong0946
 
Playground 소개
Playground 소개Playground 소개
Playground 소개승우 백
 
2 D게임 프로그래밍 발표 자료
2 D게임 프로그래밍 발표 자료2 D게임 프로그래밍 발표 자료
2 D게임 프로그래밍 발표 자료Lee Jungmin
 
NDC 2017 : VR게임을 만든다면 어떻게 만들어야할까? 5민랩 박문형
NDC 2017 : VR게임을 만든다면 어떻게 만들어야할까? 5민랩 박문형NDC 2017 : VR게임을 만든다면 어떻게 만들어야할까? 5민랩 박문형
NDC 2017 : VR게임을 만든다면 어떻게 만들어야할까? 5민랩 박문형5minlab
 
아이폰게임 인피니트블레이드
아이폰게임 인피니트블레이드아이폰게임 인피니트블레이드
아이폰게임 인피니트블레이드sketchout
 
04 생활 속 문제 해결을 위한 엔트리 프로그래밍
04 생활 속 문제 해결을 위한 엔트리 프로그래밍04 생활 속 문제 해결을 위한 엔트리 프로그래밍
04 생활 속 문제 해결을 위한 엔트리 프로그래밍entrylabs
 
유니티 Rpg게임배경 스타트업 4번째 스터디자료
유니티 Rpg게임배경 스타트업 4번째 스터디자료유니티 Rpg게임배경 스타트업 4번째 스터디자료
유니티 Rpg게임배경 스타트업 4번째 스터디자료Je Lyoung Kim
 
entry를 이용한 코딩 교육1
entry를 이용한 코딩 교육1entry를 이용한 코딩 교육1
entry를 이용한 코딩 교육1Hoyoung Jung
 
Unity cookbook 11
Unity cookbook 11Unity cookbook 11
Unity cookbook 11Jihun Soh
 

Ähnlich wie Unity 3d study #2 (20)

Unity cookbook 2
Unity cookbook 2Unity cookbook 2
Unity cookbook 2
 
경남과학고등학교 프로그래밍 멘토링 플로우차트
경남과학고등학교 프로그래밍 멘토링 플로우차트경남과학고등학교 프로그래밍 멘토링 플로우차트
경남과학고등학교 프로그래밍 멘토링 플로우차트
 
Aug 17th, 2023: Case Studies - Examining Gamification through Virtual/Augment...
Aug 17th, 2023: Case Studies - Examining Gamification through Virtual/Augment...Aug 17th, 2023: Case Studies - Examining Gamification through Virtual/Augment...
Aug 17th, 2023: Case Studies - Examining Gamification through Virtual/Augment...
 
Unity cookbook 5
Unity cookbook 5Unity cookbook 5
Unity cookbook 5
 
Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2
 
Case Studies - The Role of Computer Graphics (CG) in Movie Post-production.pdf
Case Studies - The Role of Computer Graphics (CG) in Movie Post-production.pdfCase Studies - The Role of Computer Graphics (CG) in Movie Post-production.pdf
Case Studies - The Role of Computer Graphics (CG) in Movie Post-production.pdf
 
Postmortem: Frozenbyte's Trine
Postmortem: Frozenbyte's TrinePostmortem: Frozenbyte's Trine
Postmortem: Frozenbyte's Trine
 
Stencyl works
Stencyl worksStencyl works
Stencyl works
 
Gunshooting level design_1_1.00
Gunshooting level design_1_1.00Gunshooting level design_1_1.00
Gunshooting level design_1_1.00
 
[NDC_16] 캐릭터 한 달에 하나씩 업데이트 하기 : '최강의 군단' 스킬 개발 툴 포스트 모템과 차기작 '건파이트 맨션' 툴 프리뷰
[NDC_16] 캐릭터 한 달에 하나씩 업데이트 하기 : '최강의 군단' 스킬 개발 툴 포스트 모템과 차기작 '건파이트 맨션' 툴 프리뷰[NDC_16] 캐릭터 한 달에 하나씩 업데이트 하기 : '최강의 군단' 스킬 개발 툴 포스트 모템과 차기작 '건파이트 맨션' 툴 프리뷰
[NDC_16] 캐릭터 한 달에 하나씩 업데이트 하기 : '최강의 군단' 스킬 개발 툴 포스트 모템과 차기작 '건파이트 맨션' 툴 프리뷰
 
Colosseum 파프리카 기획서_김기웅
Colosseum 파프리카 기획서_김기웅Colosseum 파프리카 기획서_김기웅
Colosseum 파프리카 기획서_김기웅
 
Playground 소개
Playground 소개Playground 소개
Playground 소개
 
2 D게임 프로그래밍 발표 자료
2 D게임 프로그래밍 발표 자료2 D게임 프로그래밍 발표 자료
2 D게임 프로그래밍 발표 자료
 
작업일지
작업일지작업일지
작업일지
 
NDC 2017 : VR게임을 만든다면 어떻게 만들어야할까? 5민랩 박문형
NDC 2017 : VR게임을 만든다면 어떻게 만들어야할까? 5민랩 박문형NDC 2017 : VR게임을 만든다면 어떻게 만들어야할까? 5민랩 박문형
NDC 2017 : VR게임을 만든다면 어떻게 만들어야할까? 5민랩 박문형
 
아이폰게임 인피니트블레이드
아이폰게임 인피니트블레이드아이폰게임 인피니트블레이드
아이폰게임 인피니트블레이드
 
04 생활 속 문제 해결을 위한 엔트리 프로그래밍
04 생활 속 문제 해결을 위한 엔트리 프로그래밍04 생활 속 문제 해결을 위한 엔트리 프로그래밍
04 생활 속 문제 해결을 위한 엔트리 프로그래밍
 
유니티 Rpg게임배경 스타트업 4번째 스터디자료
유니티 Rpg게임배경 스타트업 4번째 스터디자료유니티 Rpg게임배경 스타트업 4번째 스터디자료
유니티 Rpg게임배경 스타트업 4번째 스터디자료
 
entry를 이용한 코딩 교육1
entry를 이용한 코딩 교육1entry를 이용한 코딩 교육1
entry를 이용한 코딩 교육1
 
Unity cookbook 11
Unity cookbook 11Unity cookbook 11
Unity cookbook 11
 

Mehr von Hyunwoo Kim

Groo.io - First Entertainment Dapp
Groo.io - First Entertainment DappGroo.io - First Entertainment Dapp
Groo.io - First Entertainment DappHyunwoo Kim
 
A Study on 2D Skeletal structure for efficient 2D game development with Spine
A Study on 2D Skeletal structure for efficient 2D game development with SpineA Study on 2D Skeletal structure for efficient 2D game development with Spine
A Study on 2D Skeletal structure for efficient 2D game development with SpineHyunwoo Kim
 
SAGE Newguest 소개 자료 (150512)
SAGE Newguest 소개 자료 (150512)SAGE Newguest 소개 자료 (150512)
SAGE Newguest 소개 자료 (150512)Hyunwoo Kim
 
SAGE Newguest 소개 자료 (141028)
SAGE Newguest 소개 자료 (141028)SAGE Newguest 소개 자료 (141028)
SAGE Newguest 소개 자료 (141028)Hyunwoo Kim
 
효율적인 2D 게임 개발을 위한 2d skeletal 구조에 관한 연구 - Spine을 중심으로
효율적인 2D 게임 개발을 위한 2d skeletal 구조에 관한 연구 - Spine을 중심으로효율적인 2D 게임 개발을 위한 2d skeletal 구조에 관한 연구 - Spine을 중심으로
효율적인 2D 게임 개발을 위한 2d skeletal 구조에 관한 연구 - Spine을 중심으로Hyunwoo Kim
 
[Imagine Cup 2014] Demon chronicle Round 2 Presentation
[Imagine Cup 2014] Demon chronicle Round 2 Presentation[Imagine Cup 2014] Demon chronicle Round 2 Presentation
[Imagine Cup 2014] Demon chronicle Round 2 PresentationHyunwoo Kim
 
Spine Study Vol.00
Spine Study Vol.00Spine Study Vol.00
Spine Study Vol.00Hyunwoo Kim
 
Demon chronicle by Team Xyz
Demon chronicle by Team XyzDemon chronicle by Team Xyz
Demon chronicle by Team XyzHyunwoo Kim
 
Newguests Introduce 140305
Newguests Introduce 140305Newguests Introduce 140305
Newguests Introduce 140305Hyunwoo Kim
 
Bci를 이용한 어드벤처 게임 no more iraq 개발
Bci를 이용한 어드벤처 게임 no more iraq 개발Bci를 이용한 어드벤처 게임 no more iraq 개발
Bci를 이용한 어드벤처 게임 no more iraq 개발Hyunwoo Kim
 
Bci를 이용한 어드벤처 게임 no more iraq 개발
Bci를 이용한 어드벤처 게임 no more iraq 개발Bci를 이용한 어드벤처 게임 no more iraq 개발
Bci를 이용한 어드벤처 게임 no more iraq 개발Hyunwoo Kim
 
Unity 3d study #3
Unity 3d study #3Unity 3d study #3
Unity 3d study #3Hyunwoo Kim
 
저스티스 콜로세움 포스트 모템
저스티스 콜로세움 포스트 모템저스티스 콜로세움 포스트 모템
저스티스 콜로세움 포스트 모템Hyunwoo Kim
 
나는 어떤 게임개발자가 될 것인가?
나는 어떤 게임개발자가 될 것인가?나는 어떤 게임개발자가 될 것인가?
나는 어떤 게임개발자가 될 것인가?Hyunwoo Kim
 
Panel de pon 게임 인터페이스 분석
Panel de pon 게임 인터페이스 분석Panel de pon 게임 인터페이스 분석
Panel de pon 게임 인터페이스 분석Hyunwoo Kim
 

Mehr von Hyunwoo Kim (16)

Groo.io - First Entertainment Dapp
Groo.io - First Entertainment DappGroo.io - First Entertainment Dapp
Groo.io - First Entertainment Dapp
 
Pet Alone
Pet AlonePet Alone
Pet Alone
 
A Study on 2D Skeletal structure for efficient 2D game development with Spine
A Study on 2D Skeletal structure for efficient 2D game development with SpineA Study on 2D Skeletal structure for efficient 2D game development with Spine
A Study on 2D Skeletal structure for efficient 2D game development with Spine
 
SAGE Newguest 소개 자료 (150512)
SAGE Newguest 소개 자료 (150512)SAGE Newguest 소개 자료 (150512)
SAGE Newguest 소개 자료 (150512)
 
SAGE Newguest 소개 자료 (141028)
SAGE Newguest 소개 자료 (141028)SAGE Newguest 소개 자료 (141028)
SAGE Newguest 소개 자료 (141028)
 
효율적인 2D 게임 개발을 위한 2d skeletal 구조에 관한 연구 - Spine을 중심으로
효율적인 2D 게임 개발을 위한 2d skeletal 구조에 관한 연구 - Spine을 중심으로효율적인 2D 게임 개발을 위한 2d skeletal 구조에 관한 연구 - Spine을 중심으로
효율적인 2D 게임 개발을 위한 2d skeletal 구조에 관한 연구 - Spine을 중심으로
 
[Imagine Cup 2014] Demon chronicle Round 2 Presentation
[Imagine Cup 2014] Demon chronicle Round 2 Presentation[Imagine Cup 2014] Demon chronicle Round 2 Presentation
[Imagine Cup 2014] Demon chronicle Round 2 Presentation
 
Spine Study Vol.00
Spine Study Vol.00Spine Study Vol.00
Spine Study Vol.00
 
Demon chronicle by Team Xyz
Demon chronicle by Team XyzDemon chronicle by Team Xyz
Demon chronicle by Team Xyz
 
Newguests Introduce 140305
Newguests Introduce 140305Newguests Introduce 140305
Newguests Introduce 140305
 
Bci를 이용한 어드벤처 게임 no more iraq 개발
Bci를 이용한 어드벤처 게임 no more iraq 개발Bci를 이용한 어드벤처 게임 no more iraq 개발
Bci를 이용한 어드벤처 게임 no more iraq 개발
 
Bci를 이용한 어드벤처 게임 no more iraq 개발
Bci를 이용한 어드벤처 게임 no more iraq 개발Bci를 이용한 어드벤처 게임 no more iraq 개발
Bci를 이용한 어드벤처 게임 no more iraq 개발
 
Unity 3d study #3
Unity 3d study #3Unity 3d study #3
Unity 3d study #3
 
저스티스 콜로세움 포스트 모템
저스티스 콜로세움 포스트 모템저스티스 콜로세움 포스트 모템
저스티스 콜로세움 포스트 모템
 
나는 어떤 게임개발자가 될 것인가?
나는 어떤 게임개발자가 될 것인가?나는 어떤 게임개발자가 될 것인가?
나는 어떤 게임개발자가 될 것인가?
 
Panel de pon 게임 인터페이스 분석
Panel de pon 게임 인터페이스 분석Panel de pon 게임 인터페이스 분석
Panel de pon 게임 인터페이스 분석
 

Unity 3d study #2

  • 1. Unity 3D Study 선빈동 13 하계방학 스터디 자료제작 초안 : 최인규 편집 : 김현우 (Acura Netics) #2. 2D Shooting Game 만들어보기
  • 2. 목 차 • 2D Shooting Game 만들기 – 캐릭터 생성 – 배경 생성 – 총알 생성 – 적 생성 – 플레이어 충돌 – 해상도 맞추기 – 사운드 입히기
  • 3. 먼저… • Windows 사용자는 계정명을 영어로 설정해줄것 ex) 유니티 -> Unity 계정명이 한글일 경우 설치 후 100% 실행 안됨 http://cafe.naver.com/newguests/12 첨 부 파 일 ( 준 비 물 ) 다 운 로 드 ! ! !
  • 4. 캐릭터 생성 #1 • 드래곤(주인공) 만들기 GameObject – Create Other – Plane 클릭 Hierarchy 창에 Plane 생성 된다 Inspector창의 Transform 설정값 Position (0, 0, 0) Rotation (90, 180, 0) Scale (0.1, 0, 0.1)
  • 5. 캐릭터 생성 #2 Project 창에서 Create – Folder 혹은 마우스 우클릭 - Create – Folder 클릭 Texture로 이름을 짓는다. ( ※나중에 이름 변경을 원하면 윈도우:F2, 맥OS : return(엔터) 버튼으로 가능 ) 예제 파일에 있는 background와 dragon을 방금 만든 Texture 폴더에 드래그로 넣는다.
  • 6. 캐릭터 생성 #3 Texture 폴더 안에 들어가있다. Plane을 누른 상태에서 드래곤을 드래그 하여 Inspector의 빈 자리에 드래그 하여 넣는다. Plane에 그림이 입혀졌다.
  • 7. 캐릭터 생성 #4 흰색을 투명하게 만들어보자. Hierachy창의 Plane을 누른다. 오른쪽의 Inspector 창에 보면 맨 아래 dragon 메테리얼이 보인다. Shader 옆에 Diffuse를 누른 후 Particles – Alpha Blended 클릭 흰색 바탕이 투명해졌다.
  • 8. 캐릭터 생성 #5 ExamplePackage를 Project 창 안에 드래그 한다. Project 창에서 Create – Folder 혹은 마우스 우클릭 - Create – Folder 클릭 폴더의 이름을 Script 라고 이름을 짓자. ExamplePackage를 더블클릭하면 Import 창이 나온다. Import를 눌러 가져온다.
  • 9. 캐릭터 생성 #6 Plane을 누른 상태에서 CAnimation을 드래그 하여 넣는다. Project 창의 ExamplePackage파일은 선택한 상태에서 키보드의 Delete 키를 눌러 지운다. 스크립트가 (컴포넌트로 추가된 것이) 보일 것이다. 맨 위에 재생 버튼을 눌러 실행해본다. 아무것도 안나올 것이다. 재생버튼을 다시 눌러 재생을 풀어준다.
  • 10. 캐릭터 생성 #7 그림이 아무리 길어도 오른쪽 끝이 1이고, 위가 1이다. 유니티에서 그림을 입히는 UV(Offset)의 범위는 다음과 같다. Tiling은 칸을 나눈다는 뜻이고, Offset은 표시할 지점의 좌표라는 뜻이다.
  • 11. 캐릭터 생성 #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 애니메이션 프레임의 개수 용 애니메이션이 진행될 것이다.
  • 12. 캐릭터 생성 #9 Plane이름을 Dragon으로 변경. GameObject라는 것이 생겼을 것이다. Player로 이름을 바꿔준다. 이제 용을 방향키에 맞게 이동시켜보자. GameObject – Create Empty 클릭 Dragon을 Player에 드래그 하여 넣는다. Player 안에 Dragon이 들어갔다. Player의 좌표를 0, 0, -3으로 바꾼다.
  • 13. 캐릭터 생성 #10 Script 폴더에서 마우스 우클릭 – Create – C# Script 클릭 MonoDevelop가 실행된다. MonoDevelop는 스크립트를 편집할 수 있는 프로그램이다. Player라고 이름을 짓는다. 더블 클릭하여 들어간다
  • 14. 캐릭터 생성 #11 스크립트란? - 사용자가 움직이거나 변형하고 싶은 물체(오브젝트)를 스크립트를 이용하여 마음대로 바꿀 수 있다. *스크립트를 작성할 때 꼭 대소문자를 구분해줘야 한다!!! 이와 같이 작성한다. F7을 누르면 빌드가 되고 오류가 없다면 왼쪽 밑에 성공했다는 글이 나온다.
  • 15. 캐릭터 생성 #12 Hierarchy 창에서 Player를 누른 상태에서 Player 스크립트를 드래그 하여 Inspector창에 넣는다. 실행을 하면 오른쪽 왼쪽 방향키에 따라 용이 좌우로 움직일 것이다. 이제 위 아래로도 움직여보자. MonoDevelop을 열어 아래와 같이 추가로 작성을 한다. F7을 눌러 빌드를 한 후 유니티에서 실행버튼을 눌러보자. 위아래로도 움직일 것이다
  • 16. 배경 생성 #1 Game 창에서 화면 사이즈를 1024x768로 선택한다. 게임의 해상도를 정하는 설정이다. GameObject – Create Other – Cube 클릭
  • 17. 배경 생성 #2 큐브의 정보를 위와 같이 입력한다. Background 그림을 Cube에 드래그 하여 넣는다. Particles – Alpha Blended Cube에서 Shader의 정보를 위와 같이 바꿔준다
  • 18. 배경 생성 #3 Project 창 - Script 폴더 – 마우스 우클릭 – Create – C# Script – 이름을 Background로 만든다. 더블클릭 하여 MonoDevelop를 켠다. 이와 같이 작성한다. F7을 눌러 빌드를 하여 성공을 하였는지 확인한다
  • 19. 배경 생성 #4 Cube를 선택한 상태에서 Background 스크립트를 드래그 하여 Cube의 Inspector 창에 넣는다. 재생을 하면 배경이 움직일 것이다.
  • 20. 배경 생성 #5 Project 창에 Scene이란 폴더를 만들자. File – Save Scene 혹은 Ctrl + S를 누른다. Assets 폴더가 나오는데, Scene 폴더가 있다. 더블클릭 하여 들어간 다음 Game이라고 저장해주자
  • 21. 배경 생성 #6 그럼 Project 창의 Scene 폴더 안에 Game이란 씬 파일이 생성되었다. 이처럼 각각의 씬을 만들고 저장할 수 있다. Cube의 이름을 Background로 바꿔준다
  • 22. 총알 생성 #1 Player 스크립트를 연다 변수를 추가한다. Update()안에 위와 같이 추가한다.
  • 23. 총알 생성 #2 Hierarchy에서 Player를 누르면 Inspector 창 안에 있는 Player 스크립트에 BULLET이 추가된 것을 볼 수 있다. Project 창의 Bullet을 드래그 하여 None이라 써있는 자리에 넣는다
  • 24. 총알 생성 #3 BULLET이 들어간 모습 실행을 하고 스페이스를 누르면 불을 쏘는 것을 볼 수 있다
  • 25. 적 생성 #1 GameObject – Create Empty 클릭 SpawnEnemy로 이름을 바꾼다. Spawn : (알을)낳다 SpawnEnemy의 좌표를 (0, 8, -3)으로 해준다.
  • 26. 적 생성 #2 Script에서 C# Script를 만들어 SpawnEnemy를 만든다 위와 같이 변수를 적는다 Enemyspawn 설정값 Enemy 생성될 적 객체 rangeX 적이 생성될 x좌표 범위 enemyTime 적이 생성되는 시간 fElapsedTime 저장될 시간 (표시시간)
  • 27. 적 생성 #3 Instantiate(Enemy, this.gameObject.transform.position + new Vector3(_randomX, 0, 0), Quaternion.identity); 이부분이 적을 생성하는 코드이다. F7을 눌러 빌드를 한다. 오류가 없다면 왼쪽 아래에 Build Success가 나올 것이다.
  • 28. 적 생성#4 Hierarchy 창의 SpawnEnemy를 선택 후 Project창의 SpawnEnemy를 Inspector창에 드래그를 한다. Inspector창에서 RangeX와 EnemyTime의 수치를 바꿀 수 있다. Project창의 Enemy를 드래그 하여 None으로 되어있는 자리에 넣는다. 실행을 하면 적이 미사일을 쏘면서 내려오는 것을 볼 수 있다.
  • 29. 플레이어 충돌 #1 실행을 하면 헬리콥터가 쏘는 미사일에는 용이 맞지 않는 것을 볼 수 있다. 먼저 물리 설정을 해준다. Player를 누른 상태에서 Component – Physics – Rigidbody 클릭 Player에 Rigidbody가 추가되었다. Use Gravity의 체크를 해제해준다. 이것은 중력을 사용하겠다는 설정인데, 필요 없으므로 과감하게 체크 해제!
  • 30. 플레이어 충돌 #2 이제 충돌체크 설정을 하자. Component – Physics – Box Collider를 눌러준다 Player에게 BoxCollider가 추가되었다. Is Trigger를 꼭 체크를 해주어야 한다. Is Trigger는 다른 물체와 부딪혔을 때 밀리지 않고 그냥 지나가게 만들어준다. 미사일과 부딪혔을 때 밀리면 안되기 때문.
  • 31. 플레이어 충돌 #3 Scene 창에서 Box collider의 충돌 범위를 볼 수 있다. Inspector창에서 Size를 조절하면 충돌박스의 크기를 조절할 수 있다. ( 0.5, 0.5, 1)로 설정
  • 32. 플레이어 충돌 #4 Player의 Inspector창에서 Tag 옆에 Untagged를 누르면 Player라고 있을 것이다. Player를 클릭. 실행하면 Player도 헬리콥터의 미사일에 맞아서 없어지는 것을 볼 수 있다.
  • 33. 해상도 맞추기 #5 Hierarchy의 Main Camera를 누른다. Projection을 Perspective에서 Orthographic으로 바꾼다. Size는 5로 바꾼다.
  • 34. 해상도 맞추기 #6 Y Axis FieldOfView Near Clipping Plane Far Clipping Plane Y Axis Size Near Clipping Plane Far Clipping Plane 원근(Perspective) 직교(Orthographic)
  • 35. 사운드 입히기 #1 Sound 폴더를 만든다. 예제 파일에있는 BGM을 드래그 하여 넣는다
  • 36. 사운드 입히기 #2 Main Camera를 선택 후 BGM 사운드 파일을 드래그 하여 Inspector 탭에 넣는다
  • 37. 사운드 입히기 #3 Play On Awake와 Loop를 체크한다. Play On Awake는 씬이 시작될 때 재생되고, Loop는 노래가 끝나면 처음부터 다시 재생되는 기능이다.
  • 38. 빌드 하기 #1 File에서 Build Setting을 선택한다.
  • 39. 빌드 하기 #2 Build And Run을 선택하고 빌드할 파일 이름을 입력하고 저장을 누르면 빌드가 된다 빌드가 완료되면 빌드명.exe 파일과 빌드명_Data 폴더가 생긴다. 빌드명.exe를 선택하면 게임을 구동할 수 있다.
  • 40. END! 다 음 시 간 : 3 D 게 임 만 들 기 준 비 숙 제 : 오 늘 배 웠 던 내 용 1 회 복 습