반응형

**극꼼이네 GGTales** 307

[젤다의전설 꿈꾸는섬 모작] 치킨의 전설 4. 카메라 무빙

안녕하세요 극꼼이 입니다! 오늘은 플레이어를 따라다니는 카메라를 조작해보겠습니다. 젤다의 전설 꿈꾸는 섬에서는, 평소엔 플레이어가 중심으로 오게 따라다니던 카메라가 던전으로 들어가면 방이 한눈에 보이는 곳에 고정되며, 플레이어가 다른 방으로 이동할 경우 다시 그 방으로 포커스를 맞추는 식으로 이동합니다. 이걸 구현해주도록 하겠습니다. 1. 우선 던전 밖에서는 카메라가 플레이어를 따라다니도록 해줍니다. 2. 던전 안에서는 카메라가 고정되게 해줍니다. 3. 이제 던전 안에서 방에서 방으로 이동할 때 카메라 위치도 바꿔주도록 해줍니다. 카메라 움직임 조작이 끝났습니다. 다음으로는 NPC를 넣고 NPC와 상호작용과 대화가 가능하도록 만들어보겠습니다!

[게임 제작기] 2021.07.23

[C#] 객체 지향 프로그래밍이란? (Object Oriented Programming, OOP)

객체 지향 프로그래밍이란? 객체 지향 프로그래밍(Object-Oriented Programming)은 객체(Object)를 중심으로 프로그램을 설계, 개발해 나가는 것을 말합니다. 객체 지향 프로그래밍의 가장 큰 특징은 클래스를 이용해 함수(처리 부분), 변수(데이터 부분)를 하나로 묶어 객체(인스턴스)로 만들어 사용한다는 점입니다. C#은 여러 언어의 장점을 결합한 객체지향 언어입니다. 언어의 사용을 단순화하여 숫자를 객체와 같이 처리하게 하고, Collection에 저장할 수 있게 해줍니다. 또한, 박싱/언박싱의 개념을 가지고 있어 숫자를 객체로, 객체를 다시 숫자로 변경할 수 있게 해줍니다. 객체로 사용할 필요가 없는 숫자는 단순 값으로 처리되어 효율적인 사용이 가능합니다. 이 포스팅에서는 객체 지..

[Unity]/[C#] 2021.07.23

[젤다의전설 꿈꾸는섬 모작] 치킨의 전설 3. 닭 이동

안녕하세요 극꼼이입니다! 맵의 구현 다음으로는 플레이어의 이동, npc와의 상호작용, 아이템 획득 및 사용 순서로 진행해보겠습니다. 오늘은 가장 먼저 플레이어의 이동 방법입니다. 먼저 이 게임은 모바일에서 플레이할 수 있게 만들겁니다. 모바일 게임에서 주로 볼 수 있는 이 UI를 우선 만든 후, 이걸로 닭이 움직일 수 있도록 해보겠습니다. 1. UI생성 2. 화면을 터치하면 큰 동그라미 위치가 바뀌고, 가운데 작은 동그라미가 터치한 곳을 따라오되 큰 동그라미 범위를 벗어나지 않게 움직이도록 만들어줍니다. 3. 이제 이 작은 원의 움직임에 따라 닭도 움직이게 해줍니다. 젤다에서 플레이어는 8방향으로만 움직였기 때문에 이와 똑같이 해주기 위해 조금 애를 먹었습니다. 이는 각도를 계산해서 해주었습니다! * 두..

[게임 제작기] 2021.07.22

[C#] 두 점, 두 벡터 사이의 각도 구하는 법 (-180 ~ 180)

1. 두 점 사이의 각도 구하는 법 Mathf.Atan2, Mathf.Rad2Deg 이용 Vector2 point1; Vector2 point2; //비교할 점 2개 Vector2 offset = point2 - point1; float deg = Mathf.Atan2(offset.y, offset.x) * Mathf.Rad2Deg; 2. 두 벡터 사이의 각도 구하는 법 Vector3.SignedAngle 이용 Vector3.SignedAngle(회전 축 벡터, 비교할 벡터, 기준이 되는 벡터); 예시) 비교할 벡터가 -Vector3.forward이고, y축 회전일 때의 코드입니다. Vector3 dir; // 비교할 벡터 float angle = Vector3.SignedAngle(Vector3.up,..

[Unity]/[C#] 2021.07.22

[C# 기초] #13 : Collection(Stack, Queue)

- 자료구조 : 데이터를 구조적으로 구현하는 알고리즘 - Collection : C#에서 지원하는 자료구조 클래스. List, ArrayList, Dictionary, HashTable, Stack, Queue 등이 있음. * https://geukggom.tistory.com/95 이제까지 Collection에서 대표적으로 많이 쓰이는 클래스들을 정리해보았는데요, Collection 마지막 포스팅으로 Stack, Queue에 대해 알아보겠습니다. - Queue : 선입선출(First In First Out) 방식으로, 가장 먼저 입력된 값이 가장 먼저 나가는 구조. - Stack : 후입선출(Last In First Out) 방식으로, 가장 늦게 입력된 값이 가장 먼저 나가는 구조. - Stack, Q..

[Unity]/[C#] 2021.07.22

[C# 기초] #12 : Collection(Dictionary, HashTable)

[서론] 자료구조 : 데이터를 구조적으로 구현하는 알고리즘 Collection : C#에서 지원하는 자료구조 클래스. List, ArrayList, Dictionary, HashTable, Stack, Queue 등이 있음. 이번 포스팅에서는 이 중 Dictionary, HashTable에 대해 알아보려하는데요, 둘 다 key와 value를 사용해서 자료를 저장하는 타입이라는 공통점이 있습니다. 둘의 사용법은 거의 동일하지만 내부적으로 처리하는 기술이 다릅니다. [Dictionary] : 선언 시 미리 타입을 설정하기 때문에 입출력 시 박싱, 언박싱이 일어나지 않습니다. 따라서 사용에 용이하며, 다른 타입으로 형변환하기에도 오류가 생길 우려가 없습니다. 1.Generic 2.Key와 Value 모두 선언..

[Unity]/[C#] 2021.07.21

[젤다의전설 꿈꾸는섬 모작] 치킨의 전설 2. 맵 기획 및 구현(배치)

안녕하세요 극꼼이입니다! 젤다는 맵이 어떤식으로 구성되어 있는지(어떤 아이템을 사용하고, 어떤 행동을 해 다음 방으로 넘어갈지)가 중요한 게임이기 때문에, 먼저 그에 대해 대략적인 구상을 한 후에 유니티에서 맵을 구현하기로 했습니다. 먼저 맵의 대략적인 구상입니다. 게임을 만들면서 조금씩 맵이 늘어날 수 있겠지만, 기본적인 구성은 이와 같습니다. 그 다음, 각 방의 구조를 2차배열로 만들어 미리 prefab으로 만들어놓은 구조물을 불러오는 식으로 맵을 만들었습니다. ↓↓↓↓↓↓↓↓↓↓↓↓ 이런식으로 총 13개의 맵을 만들어두었으며(보라색, 파란색 글씨), 아이템과 이동장치 등은 아직 넣지 않았습니다. 배치하면 아래와 같습니다. 이제 다음 포스팅에서는 플레이어인 닭을 움직이게 해보겠습니다!

[게임 제작기] 2021.07.20

[C#] 컬렉션(Collection)

안녕하세요 극꼼입니다! 오늘은 Collection이 뭔지에 대해 알아보겠습니다. Collection이란? 컬렉션은 여러 데이터의 검색과 저장을 위해 특화된 자료구조 입니다. .NET은 배열 외에도 다양한 컬렉션을 제공하는데요, 몇 가지 일반적인 컬렉션 클래스에 대해 적어보려 합니다. 1. System.Collections.Generic 클래스 2. System.Collections.Concurrent 클래스 3. System.Collections 클래스 1. System.Collections.Generic 클래스 제네릭 컬렉션은 모든 항목에 동일한 데이터형식을 사용할 경우 유용합니다. System.Collections.Generic 네임스페이스에 포함된 클래스는 다음과 같습니다. - Dictionary ..

[Unity]/[C#] 2021.07.19

[젤다의전설 꿈꾸는섬 모작] 치킨의 전설 1. 모작 기획

안녕하세요 극꼼이입니다. 오늘은 새로 모작 포폴을 만들기 위해 대략적인 기획을 해보았습니다. - 장르 : 액션 어드벤처 게임 - 제작 툴 : Unity(2019.4.17f1) - 플랫폼 : 모바일 - 예상 제작기간 : 약 한달 - 리소스 : 주변 지형물(땅, 풀, 바위, 벽, 물 등), 플레이어, 적, NPC 등의 리소스는 에셋 스토어의 무료 에셋 사용 예정. - 몬스터 : 젤다에 나오는 여러 유형의 몬스터를 넣을 예정. - 맵 : 여러 기능을 보일 수 있게 자체제작. - 플레이어 1. 영구 사용 아이템 : 힘의 팔찌, 대시 신발, 물갈퀴(수영, 잠수 가능) 2. 획득 아이템 - 장착 : 깃털(점프), 후크샷 3. 획득 아이템 - 소모품 : 폭탄, 화살, 마법의 가루 - UI - 설정 : 저장, 불러오기..

[게임 제작기] 2021.07.18

[C#] .NET FrameWork(닷넷 프레임워크)

.NET(닷넷)이란? .NET Framework(닷넷 프레임워크)는 마이크로소프트사에서 제공하는 윈도우 프로그램 개발 및 실행환경으로, 네트워크 작업과 인터페이스 등 많은 작업을 캡슐화했고, 공통언어 런타임(Common Language Runtime)(CLR)이라는 이름의 가상머신 위에서 작동합니다. * .NET 프레임워크의 가장 중요한 요소는 공통언어기반(Common Language Infrastructure)(CLI)입니다. 마이크로소프트가 구현한 CLI를 일컬어 CLR이라고 합니다. 닷넷 프레임워크를 기반으로 만들어진 응용 프로그램은 미리 닷넷 프레임워크가 설치되어 있는 환경에서만 실행됩니다. 윈도우용 어플리케이션은 닷넷 프레임워크 기반으로 개발하는 것이 생산성이 높고 성능도 좋습니다. 2019년 ..

[Unity]/[C#] 2021.07.18
반응형