전체 글75 유니티 에디터 정리 안녕하세요! 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘은 유니티의 에디터에 대한 설명과 자주 사용되는 단축키를 정리하도록 하겠습니다. 유니티 에디터 Tool bar : 유니티 에디터를 다루는 tool이 있는 바 Hierarchy Window : 현재 씬에 포함되어있는 오브젝트의 리스트 Scene View : 오브젝트를 배치하거나 배경을 깔거나 특정 오브젝트를 설치(작업창) Inspector Window : Hierarchy 창에서 특정 오브젝트를 선택하면 그 오브젝트의 상세정보가 나옴(상세설명 창) Project Window : 해당 프로젝트를 보여주는 프로젝트 윈도우, 사용되는 어셋들(리소스들)을 보여줌 ※ 여기서 어셋은 이미지 자료일 수 있고 애니메이션 자료일 수도 있음. 프로젝트 창(Pr.. 2022. 1. 11. C# 단축키 정리 C# 단축키 단축키 동작 Ctrl +F3 커서에 있는 것 찾기 Ctrl + F4 탭닫기 Ctrl + F5 디버깅 하지 않고 시작 F9 Break Point 설정 Ctrl + D 현재 줄 복사해서 바로 아랫줄에 붙이기 Ctrl + X 현재 줄 잘라내기(Ctrl + V로 붙일 수있음) Ctrl + U 소문자 변환 Ctrl + shift + U 대문자 변환 Ctrl + G 행 번호 이동(원하는 라인으로 이동) Ctrl + ] { }의 끝을 찾아줌 Ctrl + shift + ] { } 전체 드래그 Ctrl + space 자동완성 F12 or Shift + F12 정의로 이동, 참조 찾기 Ctrl + K + F 자동정렬 Ctrl + K + K 북마크 추가, 해제 Ctrl + K + N 다음 북마크로 Ctrl + .. 2022. 1. 10. 비선형 자료구조 2 (그래프) 안녕하세요 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘은 비선형 자료구조의 그래프에대해 알아보도록 하겠습니다. 그래프 - G = (V, E) - 정점 : 노드 - 간선 : 정점끼리 연결한 선 그래프의 특징 - 트리와 달리 사이클을 돌 수 있음 그래프의 종류 1. 방향 그래프 : 간선에 화살표가 있는 경우(방향이 있는 경우) 2.무방향 그래프 : 간선에 화살표가 없는 경우(양쪽으로 이동 가능) 3.순환 그래프(사이클이 있는 그래프) 4.비순환 그래프(사이클이 없는 그래프) 5. 가중치 그래프(보통 경유지 구현시 자주 사용) 그래프의 표현 - 인접 리스트 - 제일 앞이 그래프에 존재하는 노드 - 그 뒤로 연결된 것은 제일 앞의 노드와 연결된 정점들 그래프의 표현 - 행렬 2022. 1. 9. 비선형 자료구조1 (트리) 안녕하세요 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘부터는 비선형 자료구조에 대해 알아보도록 하겠습니다. 트리 - 자료간의 관계가 계층 구조일 때 사용하는 비선형 자료구조 - 복잡하고 많은 파일들을 쉽게 정리 - 목적, 계획, 계층, 중요도에 맞게 나열 가능 - 노드로 이루어진 자료구조 - 하나의 루트 노드를 가짐 - 0개 이상의 자식 노드를 가짐 - 그 자식노드 또한 0개 이상의 자식노드를 가지고 이는 반복적으로 정의됨 트리 특징 - 그래프의 한 종류 - 최소 연결 트리 - 계층 모델 - DAG(Directed Acycle Graphs, 방향성 있는 비순환 그래프)의 한 종류 - 노드가 N개인 트리는 항상 N-1개의 간선(edge)를 가짐 - 루트에서 어떤 노드로 가는 경로는 유일 - 한 개.. 2022. 1. 8. 알고리즘 6(힙정렬) 힙 정렬 - 힙 : 완전 이진 트리 구조를 가진 자료 구조 - 이 힙의 특정을 이용해서 정렬하는 것이 힙 정렬 최솟값 혹은 최댓값을 빠르게 가져오기 위해 고안 형제 노드 사이에서는 아무런 대소 관계가 정해져 있지 않음 ※트리에 관해서는 나중에 한번 다루도록 하겠습니다. 힙 정렬 특징 - 시간복잡도가 좋은 편 - 가장 큰값이나 작은값이 필요할때 자주 사용 - 단순 속도 측면에서는 퀵정렬이 빠를때가 많음 - 안정성은 살짝 떨어짐 처음 트리를 채워넣는 과정 트리를 만든 후 정렬과정 오늘은 여기까지 하도록 하겠습니다. 2022. 1. 7. 알고리즘 5(삽입 정렬) 안녕하세요 게임개발자가 되기위해 공부하고있는 구구입니다. 오늘은 알고리즘의 삽입정렬에 대해 알아보도록 하겠습니다. 삽입 정렬 - 앞의 숫자가 나보다 크닞 비교하면서 자신의 위치에 삽입하는 정렬 - 앞의 값과 비교를 하기 때문에 전체 배열 중 0번 인덱스가 아닌 1번 인덱스부터 앞의 값과 비교함. 삽입 정렬 특징 - 빠르진 않음. - 비교할 데이터가 많을 때 효율이 좋지 못함 시간 복잡도 - O(n^2) 최악의 경우를 고려해보면 '역순으로 정렬된 경우' 입니다. 1회차 : n-1, 2회차 : n-2, ····· n-1회차 : 1 따라서 비교하는 횟수를 전부 합치면 1부터 n-1까지의 등차수열의 합이기 때문에 n의 2차식꼴이 나옵니다. 오늘은 여기까지 하도록 하겠습니다. 2022. 1. 6. 알고리즘 4(퀵 정렬) 안녕하세요! 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘은 알고리즘의 퀵 정렬에 대해 알아보도록 하겠습니다. 퀵 정렬 - 피봇을 기준으로 작거나 같은 값을 지닌 데이터는 앞으로, 큰 값을 지닌 데이터는 뒤로 보내서 작은값을 가지는 데이터와 큰값을 가지는 데이터로 분리해 나가며 정렬하는 방식 분할 정복 알고리즘 일반적으로 빠른 알고리즘 퀵 정렬의 특징 - 속도가 빠름 - 정렬된 리스트에 대해서는 수행시간이 더 오래 걸림 시간 복잡도 - O(n^2) 최악의 경우를 고려해보면 '분할 기준이 매번 제일 크거나 제일 작은값인 경우' 입니다. 따라서 1번부터 n-1번까지 적어도 한번씩은 비교하게 됩니다. 그래서 최악의 경우 n의 2차식꼴이 나옵니다. - O(n logn) 위처럼 최악의 경우는 n의 2차식이.. 2022. 1. 5. 알고리즘 3(버블 정렬) 안녕하세요! 오늘도 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘은 버블정렬에 대해 알아보도록 하겠습니다. 버블 정렬 - 서로 이웃한 데이터들을 비교하며 가장 큰 데이터를 가장 뒤로 보내는 정렬방식 버블정렬 과정 첫번째 데이터와 두번째 데이터를 비교하여 첫번째 값이 더 크면 두번째 데이터와 교환한다. 두번째 데이터와 세번째 데이터를 비교하여 더 큰 수를 뒤로 보낸다. 끝까지 진행하면, 제일 큰 수가 맨 뒤로가게된다. 이렇게 처음부터 n-1번째 데이터를 비교해서 정렬하는 알고리즘 버블정렬의 특징 - 구현은 단순하지만 비교적 성능이 좋지 않음 - 배열의 모든 요소와 교환 해야함 - 이미 정령이 된 데이터도 교환되는 일이 발생 - 실제 자주 쓰이지 않음. 시간복잡도 - O(n^2) 최악의 경우를 고려해.. 2022. 1. 4. 이전 1 2 3 4 ··· 10 다음