SlideShare une entreprise Scribd logo
1  sur  11
UNITY COOKBOOK
SHOT BY. INS
PART 14
카메라 & UI심화
카메라의 원리
유니티에서의 카메라는 ‘Main Camera’의 존재만 있는 것이 아닙니다. 다수의 카메라를 ‘Viewport Rect’ 공간으로부터
할당하여 여러 개의 샷을 한 화면에 담을 수 있습니다. 물론 렌더링 속도와 거기에 드는 비용도 2배가 되겠지요.
평소에는 이런 테크닉은 잘 쓰이지 않고 VR 기능으로 쓰이는 추세입니다.
( 1 / 9 )
# 공간 분할로 2개가 동시출력 된다.
카메라의 구성요소
드디어 항상 새 프로젝트를 만들었을 때 ‘Main Camera’ 객체에 붙어있는 정체모를 컴포넌트를 공개하겠습니다.
기본적으로 위치와, 카메라 컴포넌트 그리고 3가지 컴포넌트가 추가로 붙어있는데 이는 3D 게임 상에서 필요한
컴포넌트입니다. 물론 사용자가 직접 수정 가능하며 카메라 내부에서 표현할 수 있는 기능이 많습니다.
( 2 / 9 )
ㆍ GUI Layer: 게임 오브젝트 형태의 GUI 객체를 위한 공간
‘GUI Text’, ‘GUI Texture’ 등을 사용 가능하지만 구세대 기능이라 잘 안씀
ㆍ Flare Layer: ‘Lens Flare’ 효과를 담고 조정할 수 있는 레이어
ㆍ Audio Listener: 게임 상에서 들리는 소리를 듣게 해줌.
사실상 게임에서의 ‘귀’라고 볼 수 있다.
Render Texture
‘Project View’에서 ‘Create’ 탭을 눌러보면 ‘Render Texture’ 이라는 녀석이 있습니다.
이 것의 기능은 카메라가 현재 바라보고 있는 즉, 렌더링 되고 있는 장면(shot)을 텍스쳐에 실시간 그려담습니다.
그리고 카메라가 Realtime으로 렌더링 되듯이 Render Texture도 항상 수정됩니다.
( 3 / 9 )
# Render Texture를 큐브에 입힌 상태
Culling Mask
3개의 객체가 있는데 각각의 이름은 ‘Red, Green, Blue’ 입니다. 그리고 같은 이름으로 레이어를 준 상태입니다.
카메라 기능 중에 ‘Culling Mask’ 이라는 기능이 있는데 레이어의 체크가 해제 된 것들은 렌더링 전에 인식하여
아예 게임화면에서 그려지지 않습니다.
( 4 / 9 )
# 화면에 그려지지 않은 객체
미니맵 만들기
우리가 지금까지 배운 것들을 응용하여 봅시다.
‘Render Texture’에 입힐 카메라의 위치를 ‘Top View‘ 시점에서 지형을 바라보고 있게 설정합니다.
캔버스에 ‘RawImage’를 만들고 랜더텍스쳐를 적용하고 빨간 마커를 움직이면 마치 미니맵을 연상시키는 테크닉이 나옵니다.
( 5 / 9 )
# 렌더 텍스쳐에 그려지는 미니맵
UI 심화
UI 기능 중에서 잘 쓰이는 기능 몇가지를 보겠습니다.
2D 카메라 (캔버스) 상에서의 추력은 이미지 뿐만이 아니라 버튼이나, 입력 필드, 체크버튼 등 다양하게 만들 수 있습니다.
심지어 상호작용시 개발자 정의 스크립트까지 불러올 수 있어서 편리함과 기능성 마저 존재합니다.
이런 UI 객체들로 인벤토리 기능을 만들어보겠습니다.
( 6 / 9 )
# RawImage
# Button # Toggle (on/off) # Input Field
UI 응용 #1
마지막으로 UI를 활용한 2D 인벤토리 시스템을 만들어보도록 하겠습니다.
기능 내용은 ‘Input Field’의 아이템 코드(int)를 넣고 ‘Button’을 누르면 코드를 식별하여 빈 인벤토리창에 아이템을 추가하는
내용입니다. 우선적으로 인벤토리에 필요한 슬롯과 버튼, 그리고 입력창, 이벤트 시스템을 받을 빈 이미지도 하나 준비합니다.
그리고 추가적으로 2개의 스크립트를 생성합니다.
( 7 / 9 )
UI 응용 #2
InputField 정보를 받고 인벤토리 스크립트를 수행할 버튼 스크립트 내용입니다. 입력받은 Text를 정수로 변환하여
아이템 코드로 넘겨주는 역할을 담당하고 있습니다.
두 번째로는 인벤토리 스크립트인데 ‘AddItem’으로 넘겨받은 아이템 코드는 빈 슬롯을 찾아 해당 빈 칸으로 Reflush 하여
아이템코드에 걸맞는 아이템 sprite를 대체해주는 스크립트입니다.
( 8 / 9 )
UI 응용 #3
마지막으로 스크립트 연결을 해주는데 Button 부분에서의 스크립트 실행은 ‘On Click’ 부분에서 수행합니다.
자기 자신을 드래그하여 위 사진에 맞는 부분에 넣고 우리가 작성했던 스크립트를 불러옵니다.
이후 버튼과, 이벤트 객체에 맞는 스크립트를 넣고 실행하면 빈칸을 찾아 들어가는 인벤토리 기능이 완성됩니다.
이상 카메라 기능과 UI로 인벤토리를 구현해봤습니다.
( 9 / 9 )
# 빈 칸을 찾아 들어가는 아이템
Thank You !

Contenu connexe

Tendances

디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해Je Lyoung Kim
 
Unity3d pp 이용규
Unity3d pp 이용규Unity3d pp 이용규
Unity3d pp 이용규windyflows
 
Unity 3d study #2
Unity 3d study #2Unity 3d study #2
Unity 3d study #2Hyunwoo Kim
 
3D 게임 그래픽스의 이해
3D 게임 그래픽스의 이해3D 게임 그래픽스의 이해
3D 게임 그래픽스의 이해ByungChun2
 
Rooms2 vr ArtWorks
Rooms2 vr ArtWorksRooms2 vr ArtWorks
Rooms2 vr ArtWorksSangYun Yi
 
Unity 3d study #1
Unity 3d study #1Unity 3d study #1
Unity 3d study #1Hyunwoo Kim
 
제 3회 DGMIT UI&UX 컨퍼런스 : 2.5D의 세계
제 3회 DGMIT UI&UX 컨퍼런스 : 2.5D의 세계제 3회 DGMIT UI&UX 컨퍼런스 : 2.5D의 세계
제 3회 DGMIT UI&UX 컨퍼런스 : 2.5D의 세계dgmit2009
 
Unity cookbook 6
Unity cookbook 6Unity cookbook 6
Unity cookbook 6Jihun Soh
 
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례SangYun Yi
 
Unity cookbook 21
Unity cookbook 21Unity cookbook 21
Unity cookbook 21Jihun Soh
 
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현MinGeun Park
 
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효Sunhyo Jung
 
Unity cookbook 12
Unity cookbook 12Unity cookbook 12
Unity cookbook 12Jihun Soh
 
진선웅 유저수만큼다양한섬을만들자 공개용
진선웅 유저수만큼다양한섬을만들자 공개용진선웅 유저수만큼다양한섬을만들자 공개용
진선웅 유저수만큼다양한섬을만들자 공개용Sunwung Jin
 
Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?SangYun Yi
 
NDC2011 - 절차적 지형과 트렌드의 추적자들
NDC2011 - 절차적 지형과 트렌드의 추적자들NDC2011 - 절차적 지형과 트렌드의 추적자들
NDC2011 - 절차적 지형과 트렌드의 추적자들Jubok Kim
 
Make a shooting game using unity
Make a shooting game using unityMake a shooting game using unity
Make a shooting game using unityHyunwoo Kim
 
이원, 절차적 지형과 월드 머신, NDC2011
이원, 절차적 지형과 월드 머신, NDC2011이원, 절차적 지형과 월드 머신, NDC2011
이원, 절차적 지형과 월드 머신, NDC2011devCAT Studio, NEXON
 
이원, 절차적 지형 생성과 하이트필드의 사원, NDC2011
이원, 절차적 지형 생성과 하이트필드의 사원, NDC2011이원, 절차적 지형 생성과 하이트필드의 사원, NDC2011
이원, 절차적 지형 생성과 하이트필드의 사원, NDC2011devCAT Studio, NEXON
 

Tendances (20)

디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해디자이너를 위한 NGUI의 이해
디자이너를 위한 NGUI의 이해
 
Unity3d pp 이용규
Unity3d pp 이용규Unity3d pp 이용규
Unity3d pp 이용규
 
Sun and Moon
Sun and MoonSun and Moon
Sun and Moon
 
Unity 3d study #2
Unity 3d study #2Unity 3d study #2
Unity 3d study #2
 
3D 게임 그래픽스의 이해
3D 게임 그래픽스의 이해3D 게임 그래픽스의 이해
3D 게임 그래픽스의 이해
 
Rooms2 vr ArtWorks
Rooms2 vr ArtWorksRooms2 vr ArtWorks
Rooms2 vr ArtWorks
 
Unity 3d study #1
Unity 3d study #1Unity 3d study #1
Unity 3d study #1
 
제 3회 DGMIT UI&UX 컨퍼런스 : 2.5D의 세계
제 3회 DGMIT UI&UX 컨퍼런스 : 2.5D의 세계제 3회 DGMIT UI&UX 컨퍼런스 : 2.5D의 세계
제 3회 DGMIT UI&UX 컨퍼런스 : 2.5D의 세계
 
Unity cookbook 6
Unity cookbook 6Unity cookbook 6
Unity cookbook 6
 
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례
 
Unity cookbook 21
Unity cookbook 21Unity cookbook 21
Unity cookbook 21
 
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
 
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효
Unite 17 Education Day (미대 지망생이었던 제가)유니티 게임 개발자가 되었습니다 - 정선효
 
Unity cookbook 12
Unity cookbook 12Unity cookbook 12
Unity cookbook 12
 
진선웅 유저수만큼다양한섬을만들자 공개용
진선웅 유저수만큼다양한섬을만들자 공개용진선웅 유저수만큼다양한섬을만들자 공개용
진선웅 유저수만큼다양한섬을만들자 공개용
 
Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?
 
NDC2011 - 절차적 지형과 트렌드의 추적자들
NDC2011 - 절차적 지형과 트렌드의 추적자들NDC2011 - 절차적 지형과 트렌드의 추적자들
NDC2011 - 절차적 지형과 트렌드의 추적자들
 
Make a shooting game using unity
Make a shooting game using unityMake a shooting game using unity
Make a shooting game using unity
 
이원, 절차적 지형과 월드 머신, NDC2011
이원, 절차적 지형과 월드 머신, NDC2011이원, 절차적 지형과 월드 머신, NDC2011
이원, 절차적 지형과 월드 머신, NDC2011
 
이원, 절차적 지형 생성과 하이트필드의 사원, NDC2011
이원, 절차적 지형 생성과 하이트필드의 사원, NDC2011이원, 절차적 지형 생성과 하이트필드의 사원, NDC2011
이원, 절차적 지형 생성과 하이트필드의 사원, NDC2011
 

Similaire à Unity cookbook 14

Project anarchy로 3d 게임 만들기 part_3_움직여라 움직여
Project anarchy로 3d 게임 만들기 part_3_움직여라 움직여Project anarchy로 3d 게임 만들기 part_3_움직여라 움직여
Project anarchy로 3d 게임 만들기 part_3_움직여라 움직여Dong Chan Shin
 
[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개진현 조
 
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
Ndc2010   김주복, v3. 마비노기2아키텍처리뷰Ndc2010   김주복, v3. 마비노기2아키텍처리뷰
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰Jubok Kim
 
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
 
에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안Lee Jungpyo
 
UI아트 작업자를 위한 언리얼엔진4 UMG #1
UI아트 작업자를 위한 언리얼엔진4 UMG #1UI아트 작업자를 위한 언리얼엔진4 UMG #1
UI아트 작업자를 위한 언리얼엔진4 UMG #1Hong-Gi Joe
 
Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2Cody Yun
 
허니컴 태블릿 디자인
허니컴 태블릿 디자인허니컴 태블릿 디자인
허니컴 태블릿 디자인Sang-min Lee
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임Junhee Han
 
Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Minsu Park
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임Junhee Han
 
Gamebryo LightSpeed (Korean)
Gamebryo LightSpeed (Korean)Gamebryo LightSpeed (Korean)
Gamebryo LightSpeed (Korean)Gamebryo
 
Project Anarchy(Vision Engine)으로 게임 툴 만들기! part2
Project Anarchy(Vision Engine)으로 게임 툴 만들기! part2Project Anarchy(Vision Engine)으로 게임 툴 만들기! part2
Project Anarchy(Vision Engine)으로 게임 툴 만들기! part2진상 문
 
20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)Dongho Kim
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임Junhee Han
 
브릿지 Unity3D 기초 스터디 2회
브릿지 Unity3D 기초 스터디 2회브릿지 Unity3D 기초 스터디 2회
브릿지 Unity3D 기초 스터디 2회BridgeGames
 
2 D게임 프로그래밍 발표 자료
2 D게임 프로그래밍 발표 자료2 D게임 프로그래밍 발표 자료
2 D게임 프로그래밍 발표 자료Lee Jungmin
 
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)MinGeun Park
 

Similaire à Unity cookbook 14 (20)

Project anarchy로 3d 게임 만들기 part_3_움직여라 움직여
Project anarchy로 3d 게임 만들기 part_3_움직여라 움직여Project anarchy로 3d 게임 만들기 part_3_움직여라 움직여
Project anarchy로 3d 게임 만들기 part_3_움직여라 움직여
 
Gametech2015
Gametech2015Gametech2015
Gametech2015
 
Devtree illu
Devtree illuDevtree illu
Devtree illu
 
[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개
 
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
Ndc2010   김주복, v3. 마비노기2아키텍처리뷰Ndc2010   김주복, v3. 마비노기2아키텍처리뷰
Ndc2010 김주복, v3. 마비노기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...
 
에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안에코노베이션 3차 세미나 교안
에코노베이션 3차 세미나 교안
 
UI아트 작업자를 위한 언리얼엔진4 UMG #1
UI아트 작업자를 위한 언리얼엔진4 UMG #1UI아트 작업자를 위한 언리얼엔진4 UMG #1
UI아트 작업자를 위한 언리얼엔진4 UMG #1
 
Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2Unity3D Developer Network Study Chapter.2
Unity3D Developer Network Study Chapter.2
 
허니컴 태블릿 디자인
허니컴 태블릿 디자인허니컴 태블릿 디자인
허니컴 태블릿 디자인
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임
 
Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임
 
Gamebryo LightSpeed (Korean)
Gamebryo LightSpeed (Korean)Gamebryo LightSpeed (Korean)
Gamebryo LightSpeed (Korean)
 
Project Anarchy(Vision Engine)으로 게임 툴 만들기! part2
Project Anarchy(Vision Engine)으로 게임 툴 만들기! part2Project Anarchy(Vision Engine)으로 게임 툴 만들기! part2
Project Anarchy(Vision Engine)으로 게임 툴 만들기! part2
 
20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)20140514 team blender_v01 (Korean)
20140514 team blender_v01 (Korean)
 
증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임증강현실을 통한 두더지잡기 게임
증강현실을 통한 두더지잡기 게임
 
브릿지 Unity3D 기초 스터디 2회
브릿지 Unity3D 기초 스터디 2회브릿지 Unity3D 기초 스터디 2회
브릿지 Unity3D 기초 스터디 2회
 
2 D게임 프로그래밍 발표 자료
2 D게임 프로그래밍 발표 자료2 D게임 프로그래밍 발표 자료
2 D게임 프로그래밍 발표 자료
 
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)
 

Plus de Jihun Soh

Unity cookbook 20
Unity cookbook 20Unity cookbook 20
Unity cookbook 20Jihun Soh
 
Unity cookbook 19
Unity cookbook 19Unity cookbook 19
Unity cookbook 19Jihun Soh
 
Unity cookbook 18
Unity cookbook 18Unity cookbook 18
Unity cookbook 18Jihun Soh
 
Unity cookbook 15
Unity cookbook 15Unity cookbook 15
Unity cookbook 15Jihun Soh
 
Unity cookbook 11
Unity cookbook 11Unity cookbook 11
Unity cookbook 11Jihun Soh
 
Unity cookbook 10
Unity cookbook 10Unity cookbook 10
Unity cookbook 10Jihun Soh
 
Unity cookbook 9
Unity cookbook 9Unity cookbook 9
Unity cookbook 9Jihun Soh
 
Unity cookbook 8
Unity cookbook 8Unity cookbook 8
Unity cookbook 8Jihun Soh
 
Unity cookbook 7
Unity cookbook 7Unity cookbook 7
Unity cookbook 7Jihun Soh
 
Unity cookbook 5
Unity cookbook 5Unity cookbook 5
Unity cookbook 5Jihun Soh
 
Unity cookbook 4
Unity cookbook 4Unity cookbook 4
Unity cookbook 4Jihun Soh
 
Unity cookbook 3
Unity cookbook 3Unity cookbook 3
Unity cookbook 3Jihun Soh
 
Unity cookbook 2
Unity cookbook 2Unity cookbook 2
Unity cookbook 2Jihun Soh
 
Unity cookbook 1
Unity cookbook 1Unity cookbook 1
Unity cookbook 1Jihun Soh
 

Plus de Jihun Soh (14)

Unity cookbook 20
Unity cookbook 20Unity cookbook 20
Unity cookbook 20
 
Unity cookbook 19
Unity cookbook 19Unity cookbook 19
Unity cookbook 19
 
Unity cookbook 18
Unity cookbook 18Unity cookbook 18
Unity cookbook 18
 
Unity cookbook 15
Unity cookbook 15Unity cookbook 15
Unity cookbook 15
 
Unity cookbook 11
Unity cookbook 11Unity cookbook 11
Unity cookbook 11
 
Unity cookbook 10
Unity cookbook 10Unity cookbook 10
Unity cookbook 10
 
Unity cookbook 9
Unity cookbook 9Unity cookbook 9
Unity cookbook 9
 
Unity cookbook 8
Unity cookbook 8Unity cookbook 8
Unity cookbook 8
 
Unity cookbook 7
Unity cookbook 7Unity cookbook 7
Unity cookbook 7
 
Unity cookbook 5
Unity cookbook 5Unity cookbook 5
Unity cookbook 5
 
Unity cookbook 4
Unity cookbook 4Unity cookbook 4
Unity cookbook 4
 
Unity cookbook 3
Unity cookbook 3Unity cookbook 3
Unity cookbook 3
 
Unity cookbook 2
Unity cookbook 2Unity cookbook 2
Unity cookbook 2
 
Unity cookbook 1
Unity cookbook 1Unity cookbook 1
Unity cookbook 1
 

Dernier

Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Wonjun Hwang
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Wonjun Hwang
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Kim Daeun
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionKim Daeun
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)Tae Young Lee
 

Dernier (6)

Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)
 

Unity cookbook 14

  • 1. UNITY COOKBOOK SHOT BY. INS PART 14 카메라 & UI심화
  • 2. 카메라의 원리 유니티에서의 카메라는 ‘Main Camera’의 존재만 있는 것이 아닙니다. 다수의 카메라를 ‘Viewport Rect’ 공간으로부터 할당하여 여러 개의 샷을 한 화면에 담을 수 있습니다. 물론 렌더링 속도와 거기에 드는 비용도 2배가 되겠지요. 평소에는 이런 테크닉은 잘 쓰이지 않고 VR 기능으로 쓰이는 추세입니다. ( 1 / 9 ) # 공간 분할로 2개가 동시출력 된다.
  • 3. 카메라의 구성요소 드디어 항상 새 프로젝트를 만들었을 때 ‘Main Camera’ 객체에 붙어있는 정체모를 컴포넌트를 공개하겠습니다. 기본적으로 위치와, 카메라 컴포넌트 그리고 3가지 컴포넌트가 추가로 붙어있는데 이는 3D 게임 상에서 필요한 컴포넌트입니다. 물론 사용자가 직접 수정 가능하며 카메라 내부에서 표현할 수 있는 기능이 많습니다. ( 2 / 9 ) ㆍ GUI Layer: 게임 오브젝트 형태의 GUI 객체를 위한 공간 ‘GUI Text’, ‘GUI Texture’ 등을 사용 가능하지만 구세대 기능이라 잘 안씀 ㆍ Flare Layer: ‘Lens Flare’ 효과를 담고 조정할 수 있는 레이어 ㆍ Audio Listener: 게임 상에서 들리는 소리를 듣게 해줌. 사실상 게임에서의 ‘귀’라고 볼 수 있다.
  • 4. Render Texture ‘Project View’에서 ‘Create’ 탭을 눌러보면 ‘Render Texture’ 이라는 녀석이 있습니다. 이 것의 기능은 카메라가 현재 바라보고 있는 즉, 렌더링 되고 있는 장면(shot)을 텍스쳐에 실시간 그려담습니다. 그리고 카메라가 Realtime으로 렌더링 되듯이 Render Texture도 항상 수정됩니다. ( 3 / 9 ) # Render Texture를 큐브에 입힌 상태
  • 5. Culling Mask 3개의 객체가 있는데 각각의 이름은 ‘Red, Green, Blue’ 입니다. 그리고 같은 이름으로 레이어를 준 상태입니다. 카메라 기능 중에 ‘Culling Mask’ 이라는 기능이 있는데 레이어의 체크가 해제 된 것들은 렌더링 전에 인식하여 아예 게임화면에서 그려지지 않습니다. ( 4 / 9 ) # 화면에 그려지지 않은 객체
  • 6. 미니맵 만들기 우리가 지금까지 배운 것들을 응용하여 봅시다. ‘Render Texture’에 입힐 카메라의 위치를 ‘Top View‘ 시점에서 지형을 바라보고 있게 설정합니다. 캔버스에 ‘RawImage’를 만들고 랜더텍스쳐를 적용하고 빨간 마커를 움직이면 마치 미니맵을 연상시키는 테크닉이 나옵니다. ( 5 / 9 ) # 렌더 텍스쳐에 그려지는 미니맵
  • 7. UI 심화 UI 기능 중에서 잘 쓰이는 기능 몇가지를 보겠습니다. 2D 카메라 (캔버스) 상에서의 추력은 이미지 뿐만이 아니라 버튼이나, 입력 필드, 체크버튼 등 다양하게 만들 수 있습니다. 심지어 상호작용시 개발자 정의 스크립트까지 불러올 수 있어서 편리함과 기능성 마저 존재합니다. 이런 UI 객체들로 인벤토리 기능을 만들어보겠습니다. ( 6 / 9 ) # RawImage # Button # Toggle (on/off) # Input Field
  • 8. UI 응용 #1 마지막으로 UI를 활용한 2D 인벤토리 시스템을 만들어보도록 하겠습니다. 기능 내용은 ‘Input Field’의 아이템 코드(int)를 넣고 ‘Button’을 누르면 코드를 식별하여 빈 인벤토리창에 아이템을 추가하는 내용입니다. 우선적으로 인벤토리에 필요한 슬롯과 버튼, 그리고 입력창, 이벤트 시스템을 받을 빈 이미지도 하나 준비합니다. 그리고 추가적으로 2개의 스크립트를 생성합니다. ( 7 / 9 )
  • 9. UI 응용 #2 InputField 정보를 받고 인벤토리 스크립트를 수행할 버튼 스크립트 내용입니다. 입력받은 Text를 정수로 변환하여 아이템 코드로 넘겨주는 역할을 담당하고 있습니다. 두 번째로는 인벤토리 스크립트인데 ‘AddItem’으로 넘겨받은 아이템 코드는 빈 슬롯을 찾아 해당 빈 칸으로 Reflush 하여 아이템코드에 걸맞는 아이템 sprite를 대체해주는 스크립트입니다. ( 8 / 9 )
  • 10. UI 응용 #3 마지막으로 스크립트 연결을 해주는데 Button 부분에서의 스크립트 실행은 ‘On Click’ 부분에서 수행합니다. 자기 자신을 드래그하여 위 사진에 맞는 부분에 넣고 우리가 작성했던 스크립트를 불러옵니다. 이후 버튼과, 이벤트 객체에 맞는 스크립트를 넣고 실행하면 빈칸을 찾아 들어가는 인벤토리 기능이 완성됩니다. 이상 카메라 기능과 UI로 인벤토리를 구현해봤습니다. ( 9 / 9 ) # 빈 칸을 찾아 들어가는 아이템