SMALL

전체 글 101

Cinemachine Free Look Camera 민감도 조절

Cinemachine Free Look Camera을 통해 캐릭터 화면 회전을 하게 되면 버벅이거나 끊겨서 움직여지는 것처럼 느껴질 것이다. 그 이유는 기본적으로 InputManager의 Mouse X, Mouse Y의 입력을 받기 때문인데, 민감도 설정이 1로 되어 있기 때문에 세밀한 움직임을 갖지 못하는 것이다. 조금 부드럽게 움직이고 싶으면 아래와 같이 하며 된다. 1. 상단의 Edit - Project Settings - InputManager를 연다. 2. InputManager에서 Mouse X와 Mouse Y의 Sensitivety(민감도) 값을 1보다 낮춰준다. (기본값 1은 윈도우 마우스 민감도와 같다.)

Input Error

구 input에서 new Inputsystem을 바꾸려니까 고쳐야할게 한두가지가 아니며 아래와 같은 에러도 발생한다..ㅠㅠ You are trying to read Input using the UnityEngine.Input class, but you have switched active Input handling to Input System package in Player Settings. 번역상 새로운 인풋시스템을 사용하는데 왜 예전꺼를 다시 쓰려고 하냐는 말..ㅎㅎ 해결 방법은 먼저 edit - project settings을 눌러 프로젝트 세팅창을 연다. 그리고에 player탭에서 아래쪽에 Configuration - Active input handling을 Both로 교체하면 된다.

연결 리스트

연결 자료구조 1. 순차 자료구조의 문제점 - 문제점 1) 삽입 연산이나 삭제 연산 후에 연속적인 물리 주소를 유지하기 위해서 원소들을 이동시키는 추가적인 작업과 시간 소요 * 원소의 개수가 많을수록 원소들이 이동 작업으로 인한 오버 헤드가 많음 * 삽입, 삭제, 연산이 많이 발생하는 경우에 성능 상의 문제 발생 2) 순차 자료구조는 배열을 이용하여 구현하기 때문에 배열이 갖고 있는 메모리 사용의 비효율성 문제를 그대로 가짐 2. 연결 자료구조의 정의 - 연결 자료구조(Linked Data Structure) : 자료의 논리적인 순서와 물리적인 순서가 일치하지 않는 자료구조 * 각 원소에 저장되어 있는 다음 원소의 주소(Pointer)에 의해 순서가 연결되는 방식 -> 물리적인 순서를 맞추기 위한 오버 ..

리스트와 단순 연결 리스트

연결 리스트 1. 연결 리스트란? * 리스트의 목록을 순서대로 연결한 것 2. 연결 리스트의 기초 typedef struct { int Data; //노드 내부의 실제 데이터 또는 레코드 node* Next; //Next가 가리키는 것은 노드 타입 } node; //구조체에 노드라는 새로운 타입명 부여 typedef node* Nptr; //Nptr 타입이 가리키는 것은 노드 타입 Nptr p, q; //Nptr 타입 변수 p, q를 선언 - 노드 이어붙이기 p = (node *)malloc(sizeof(node)); p->Data = 33; p->Next = (node *)malloc(sizeof(node)); p->Next->Data = 22; p->Next->Next = NULL; 3. 출력, 삽입..

선형 리스트의 구현

1차원 배열을 이용한 선형 리스트의 구현 1. 구현 - 1차원 배열을 이용한 구현 int sale[4] = {157, 209, 251, 312}; * 특징: 동종의 데이터, 연속적 할당 * 물리적 구조 a = 배열이 시작되는 주소 ex) a = 2000이라면 sale[3]의 주소(&sale[3])는 200 + 3x4 = 2012이다. 2차원 배열을 이용한 선형 리스트의 구현 1. 구현 - 2차원 배열을 이용한 구현 int sale[2] [4] = {{63, 84, 140, 130}, {157, 209, 251, 312}}; * 논리적 구조 - 2차원 배열의 물리적 저장 방법 * 2차원의 논리적 순서를 1차원의 물맂적 순서로 변환하는 방법을 사용 - 행 우선 순서 방법(Row Major Order) > 2..

선형 리스트(Lenear List) 개요

선형구조 - 스택 * 스택 자료구조에 먼저 저장된 것이 꺼내어 쓸 때는 제일 나중에 나옴 * 반대로 가장 최근에 저장된 것이 꺼내어 쓸 때는 제일 먼저 나옴 * 만약 자료들의 나열 순서를 바꾸고 싶다면 스택에 집어 넣었다가 꺼내면 역순으로 바뀜 - 큐 * 스택과 반대로 큐 자료 구조에 먼저 저장된 것이 제일 먼저 나옴 * 가장 나중에 저장된 것이 꺼내어 쓸 때는 가장 나중에 나옴 - 환형 큐 * 한정된 길이 안에서 부수적인 작업 없이 읽고 쓰기를 할 수 있는 큐임 * 원형으로 구성된 큐 - 덱 * 양쪽에서 넣기와 빼기를 할 수 있는 일반화된 선형 구조임 비선형구조 - 그래프 * 꼭지점과 꼬지점을 잇는 변으로 구성됨 - 유향/무향 그래프 * 변이 방향성을 갖는지 갖지 않는지에 따른 그래프의 분류임 - 트리..

알고리즘 분석

시간 복잡도 - 알고리즘이 시간적으로 얼마나 효율적인지를 나타내어 주는 지표 - 데이터 양에 따른 처리 시간 증가가 완만할 수록 알고리즘 효율이 좋음 1. 알고리즘 - 알고리즘이란? * 추상적, 개략적으로 기술한 조리법 * 알고리즘을 구체적으로 표현한 것이 프로그램 - 사세성 * 기본 동작을 언급하되 너무 추상적이거나 구체적이어서는 안됨 - 정확성 * 허용된 입력에 대해서 제대로 동작해야 함 * '정확히 우리가 기대하는 것'을 수행해야 함 2. 프로그램 오류 - 문법적 오류 * 명령문 끝에 세미콜론 * 프로그래머와 컴퓨터 간에 정확한 의사소통 * 모호성(Ambiguity)을 배제하기 위한 약속 - 의미 상의 오류 * 프로그래머와 컴파일러 사이의 오해 * 연산자의 오사용 등 - 논리적인 오류 * 문법은 맞..

자료구조와 알고리즘

* 자료구조와 알고리즘의 관계는 의존적 메모리 할당 1. 메모리 할당의 개념 - 기본적 예제 연속적(Contiguous) : 배열 연결적(Linked) : 연결 리스트 2. 연속적 할당 - 하나의 배열로서 단일 연속적인 메모리 공간에 n객체가 저장됨 - 더 많은 메모리가 필요할 때에는 새로 메모리 공간을 요구하고 할당 받고, 이전 메모리의 모든 정보를 새 메모리에 복사해야 함. - 일반적으로 OS에게 추가로 연속된 n객체의 공간할당을 받을 수 없음 ex) ABCD 3. 연결적 할당 - 두 데이터를 연결적으로 저장할 수 있도록 할당 - 객체 자기 자신 그리고 자신과 연결되어 있는 다음 아이템에 대한 참조로 구성 - C++ 객체에서의 노드란 다음 노드의 주소(Pointer)를 지칭함 ex) A→B→C→D -..

이론적 배경

※ 4명의 플레이어라는 가정 - 4개의 게임 세상이 존재(컴퓨터 1대 당 1세상 존재) A가 로컬 플레이어라면 나머지 B, C, D,는 리모트 플레이어 B가 로컬 플레이어라면 나머지 A, C, D,는 리모트 플레이어 ... - 로컬 플레이어는 다른 플레이어들에게 정보를 공유하는 방식(동기화 Sync) - 결국 동기화는 필수 요소 ※ 서버-클라이언트와 권한 분리 * 서버 - 서비스를 제공하는 컴퓨터 - 게임 세상을 마련해줌 * 클라이언트 - 서버에 찾아가서 서비스를 받는 컴퓨터 - Dedicated Server와 Host Server로 나뉨 * Host Server - 3명의 클라이언트가 존재한다면, 그 중에 하나는 Host이자 Server가 됨 - Host가 다른 클라이언트의 정보를 받아서 동기화를 관리..

추상 데이터형

컨테이너 1. 컨테이너의 개념 - 컨테이너의 정의와 기능 * 대부분의 일반적 추상형 데이터 타입(ADT: Abstract Data Type) * 객체에 접근하고 저장하는 등의 자료의 구조를 묘사함 - 처리와 연산의 정의 [ 개체(Entity)이거나 ] [ 컨테이너에 저장된 객체 ] 2. 연산 - 컨테이너의 연산 * 컨테이너의 생성 * 기존 컨테이너의 복사나 폐기 * 컨테이너 비움 * 컨테이너 내 객체의 개수 반환 * 컨테이너가 수용할 수 있는 최대 객체의 수 반환 * 두 컨테이너에서 합집합과 교집합 계산 - 컨테이너에 저장된 객체의 연산 * 객체의 삽입 * 객체의 접근 혹은 수정 * 객체의 삭제 * 컨테이너 내에 존재 유무 확인 * 컨테이너 내 객체 모두를 반복 (혹은 한번에 하나씩 한꺼번에 접근) - ..

LIST