[24/12/18 멋쟁이사자처럼 부트캠프 TIL 회고] - 21일차 Unity 게임개발 3기
·
TIL
캐릭터 스킬 사용 구현캐릭터 스킬 사용 구현 캐릭터 스킬 버튼을 누르면 스킬을 사용하고, 스킬을 사용하는 동안은 캐릭터가 움직이지 않도록 구현한다. 1. 스킬 버튼 UI 만들기캔버스 아래에 스킬 버튼 생성Unity의 Canvas 안에 스킬 버튼을 추가버튼에 다운로드한 스킬 아이콘 이미지 추가CButton Script 컴포넌트 추가 2. CButton 코드public class CButton : MonoBehaviour{ [SerializeField]private Button button; private void Awake() //꼭 Awake로 해주기 { button = GetComponent(); } public void AddListener..
[24/12/13 멋쟁이사자처럼 부트캠프 TIL 회고] - 18일차 Unity 게임개발 3기
·
TIL
▼오늘 학습한 내용 2D Tile 게임 만들기2D 타일 게임 만들기 Universal2D로 새 프로젝트를 만들어준다.Universal2D는 2D 그래픽 작업을 위한 렌더링 솔루션이이며, Universal Render Pipeline (URP)를 기반으로 동작한다.2D 플랫포머, 퍼즐 게임, 로그라이크 게임 등의 제작에 적합높은 비주얼 퀄리티를 유지하면서도 성능을 중요시하는 모바일 및 콘솔 2D 게임 프로젝트에도 유리 다운 받은 파일들도 import 했다. 이 URPPackage는 꼭 import 해줘야 한다. 그 다음 Demo씬으로 가서 작업할것이다. 사용할 캐릭터를 슬라이스한다. 설정을 사진과 같이 바꿔준다. Sprite Mode 옵션Single텍스처에서 하나의 스프라이트만 사용할 때 선택단일 이미지(..
[24/12/11 멋쟁이사자처럼 부트캠프 TIL 회고] - 16일차 Unity 게임개발 3기
·
TIL
오늘부터는 알고리즘을 배운다. ▼오늘 학습한 내용 알고리즘알고리즘:  문제를 해결하기 위해 필요한 명확한 절차나 규칙의 집알고리즘의 종류 정렬 알고리즘 (데이터를 순서대로 정리)탐색 알고리즘 (데이터에서 원하는 값을 찾기)그래프 알고리즘 (노드와 엣지 구조를 활용)동적 프로그래밍 (복잡한 문제를 작은 부분으로 나누어 해결)    버블 정렬버블정렬: 인접한 두 데이터를 비교하여 정렬하며, 가장 큰 값(또는 작은 값)을 뒤로 보내 정 특징: 간단한 구조지만, 대량의 데이터를 처리할 때 비효율적예시: [5, 3, 8, 2] → [3, 5, 2, 8] → [3, 2, 5, 8] → [2, 3, 5, 8] 버블정렬 구현public void BubbleSort(int[] arr){ int n = arr.Len..
[24/12/10 멋쟁이사자처럼 부트캠프 TIL 회고] - 15일차 Unity 게임개발 3기
·
TIL
자료구조 6일차 Start! ▼오늘 학습한 내용 트리 (Tree)트리 (Tree): 트리는 계층적 구조를 표현하는 비선형 자료구조로 노드들과 노드들을 연결하는 간선들로 구성되어 있다.트리의 주요 특징하나의 루트 노드를 가짐각 노드는 0개 이상의 자식 노드를 가질 수 있음사이클이 존재하지 않음트리의 종류일반 트리 (General Tree): 노드가 임의의 수의 자식을 가질 수 있는 트리이진 트리 (Binary Tree): 각 노드가 최대 2개의 자식을 가질 수 있는 트리완전 이진 트리 (Complete Binary Tree): 마지막 레벨을 제외한 모든 레벨이 완전히 채워진 이진 트리포화 이진 트리 (Perfect Binary Tree): 모든 내부 노드가 2개의 자식을 가지며, 모든 리프 노드가 같은 레..
[24/12/06 멋쟁이사자처럼 부트캠프 TIL 회고] - 14일차 Unity 게임개발 3기
·
TIL
자료구조 5일차 Start! ▼오늘 학습한 내용 힙 (Heap)힙 (Heap): 완전 이진 트리 형태로 데이터를 저장하며, 특정 조건(힙 조건)을 만족하는 자료구조로 우선순위 큐나 최댓값/최솟값 탐색에 주로 사용됨. 완전 이진 트리마지막을 제외한 모든 노드에서 자식들이 꽉 채워진 이진트리(왼쪽->오른쪽), (아래쪽->위쪽)출처: [자료구조] 그림으로 알아보는 힙(Heap)힙의 종류최대 힙(Max Heap): 부모노드의 값이 자식 노드의 값보다 항상 크거나 같음최소 힙(Min Heap): 부모 노드의 값이 자식 노드의 값보다 항상 작거나 같음힙의 동작삽입: 새 노드를 마지막 위치에 추가 -> 부모와 비교하며 위로 올라감(Heapify Up)삭제(루트 노드 제거): 루트 노드를 삭제 -> 마지막 노드를 루트..
[24/12/05 멋쟁이사자처럼 부트캠프 TIL 회고] - 13일차 Unity 게임개발 3기
·
TIL
자료구조 4일 차 Start! ▼오늘 학습한 내용Undo, Redo 만들기Undo, Redo 만들기 ( With Command 패턴 )지난 시간 과제였던 Undo, Redo 만들기를 오전에 같이 진행했다. 전체코드public interface ICommand{ void Execute(); void Undo();}public class CommandManager : MonoBehaviour{ private Stack undoStack = new Stack(); private Stack redoStack = new Stack(); public void ExcuteCommand(ICommand command) { // 커맨드 객체의 excute를 실행 ..
[24/12/04 멋쟁이사자처럼 부트캠프 TIL 회고] - 12일차 Unity 게임개발 3기
·
TIL
자료구조 3일차 Start!▼오늘 학습한 내용 스택 (Stack)스택 (Stack): 후입선출(LIFO. Last In First Out) 원칙을 따르는 데이터 구조로, 마지막에 추가된 요소가 가장 먼저 제거된다.스택 주요 연산Push: 데이터를 스택의 맨 위에 추가하는 연산.Pop: 스택의 맨 위 데이터를 제거하고 반환하는 연산.Peek: 스택의 맨 위 데이터를 제거하지 않고 확인하는 연산. isEmpty: 스택이 비어있는지 여부를 확인. 사용사례뒤로가기: 위로/앞으로 이동 기능 구현 DFS(깊이 우선 탐색) : 그래프나 트리 탐색에서 스택을 이용하여 경로를 추적.괄호검증(괄호 짝 확인): 문자열을 스택에 푸시한 후 팝하여 역순으로 변환.후위 표기법 계산: 연산자를 피연산자 뒤에 표기하는 방식 (ex:..
[24/12/03 멋쟁이사자처럼 부트캠프 TIL 회고] - 11일차 Unity 게임개발 3기
·
TIL
자료구조 2일차 Start!▼오늘 학습한 내용 연결 리스트 (Linked List)연결 리스트 (Linked List): 노드들이 연결 링크를 통해 차례로 이어지는 형태로 데이터를 저장하는 구조구성1. 데이터: 저장하려는 값2. 포인터: 다음 노드를 가리키는 참조특징동적 크기 (크기 미리 정하지x, 데이터 추가나 제거할 때 효율적)비효율적 검색: 특정 데이터를 찾으려면 처음부터 끝까지 순차적으로 검색해야 함메모리 상에서 연속적이지 위치에 저장 가종류1. 싱글 링크드 리스트: 한 방향으로만 연결.2. 더블 링크드 리스트: 양방향으로 연결.3. 원형 링크드 리스트: 마지막 노드가 처음 노드와 연결된 형태 C#에서 제공하는 LinkedList를 활용해 링크드 리스트 체험하는 예제 1. 링크드 리스트 선언과 초..
[24/11/28 멋쟁이사자처럼 부트캠프 TIL 회고] - 8일차 Unity 게임개발 3기
·
TIL
▼오늘 학습한 내용 [예제] 캐릭터 애니메이션 만들기[예제] 캐릭터 애니메이션 만들기오늘은 캐릭터 다리가 움직이는 애니메이션을 만들어 볼것이다.단순히 다리를 회전시키면 다리가 어색하게 튀어나오는 문제가 발생할 수 있다.그래서 피봇(Pibot)을 적절하게 조정해줘야한다. 피봇 설정을 통한 다리 애니메이션 개선1. 자식 오브젝트 생성: Right Leg 오브젝트의 자식 오브젝트 생성 (이름:Right Leg Pivot)2. 피봇 위치 조정: Right Leg Pivot 오브젝트를 다리 길이에 맞춰서 위쪽으로 올려준다. (Wireframe 모드 활성화 시 편리)3. 왼쪽 다리에도 동일하게 적용: Right Leg Pivot  오브젝트를 복사하여 자식 오브젝트로 추가 (이름:  Left Leg Pivot)4. ..
[24/11/27 멋쟁이사자처럼 부트캠프 TIL 회고] - 7일차 Unity 게임개발 3기
·
TIL
▼오늘 학습한 내용애니메이션(Animation)애니메이션: 애니메이션을 실행하는 컴포넌트하지만 Animation Component는 거의 쓰지 않으며, Animation에서 통합 관리하여 사용 애니메이션 윈도우 생성방법단축키 : Ctrl + 6 애니메이션 생성 애니메이션을 만들 오브젝트 선택Create버튼 클릭 애니메이션 제작녹화 버튼을 클릭Add Key 클릭포인터를 원하는 시간만큼 이동오브젝트를 움직여 원하는 동작으로 움직이기녹화 종료 문이 0.30초 동안 transform.Rotation(0, -130, 0)만큼 회전하여 열리는 애니메이션 Door를 만들었다.DoorEvent 스크립트를 작성한 후, Animatior가 추가된 오브젝트에 연결하고 확인해보자. DoorEvent 스크립트public cla..