팁
- v1(2,3,4) + v2(4,5,6) = (6,8,10) ⇒ 산술합, v1이 v2만큼 이동한 위치 벡터
- = (-2, -2, -2) ⇒ 산술차, v2가 v1을 바라보는 방향 벡터
- 행 우선 : 어제의 행렬 구성을 봐라 / 왼손좌표계다. (directX 9)
- 열 우선 : 유니티는 왼손좌표계에 열 우선을 쓴다. (directX 11)
- 정 필요하면 행렬 전치로 행을 열로, 열을 행렬로 바꿀 수 있다.
- 1000
- 0100
- 0010
- 0001 ⇒ 이렇게 (1, 1, 1, 1)이 나오는 행렬을 단위행렬이라고 한다.
- 자신의 행렬에 역행렬을 곱하면, ‘단위행렬’이 나온다.
- 즉, 행렬과 행렬을 곱할떄 원래 행렬과 같은 값 : 단위행렬
- 행렬과 행렬을 곱할떄 단위 행렬과 같은 값 : 역행렬
- 자신의 행렬에 단위 행렬을 곱하면 ‘자신의 행렬’이 나온다.
- 시간 복잡도 : 최악은 빅오O(빅오표기법)이라고 한다.
Flgnn
- 단일명령 - 단일자료 (SISD) : 데이터 하나를 하나씩 처리
- 전산에서 한 프로세서가 한번에 하나의 명령어를 처리할 때 하나의 메모리에 저장되어 있는 한 데이터를 이용하여 처리하는 것을 일컫는 용어이다.
- 대 용량의 데이터를 처리하는게 힘들었다.
- SIMD : 한번에 여러 데이터 처리 (GPU)
- 하나의 명령어로 여러 개의 값을 동시에 계산하는 방식이다.
- MISD : 여러명이서 하나의 데이터를 처리 (이론상)
- 전산에서 각기 다른 명령어를 처리하는 처리부 여러개가 동일한 데이터를 처리하는 병렬 컴퓨팅 아키텍처를 일컫는 용어이다.
- MIMD : 여러명이서 여러 데이터를 처리 (CPU)
- 각각의 다른 프로세서들은 각기 다른 데이터를 이용하는 각기 다른 여러 명령어들이 실행할 수 있다.
벡터
- 벡터 : 방향과 크기(스칼라)를 가진다. (근데 우리는 이걸 위치로 쓴다. 벡터와 위치는 상관관계가 없다. ⇒ 방향과 크기만 존재하기 때문)
- 여기서 x축과의 각도(내적)를 물체가 얼마나 이동한지를 알아볼때 사용한다.
좌표계
- 숫자와 기호로 위치공간을 표현하는 방법
- 좌표계의 축방향을 구분할때 왼손좌표계, 오른손좌표계로 구분한다.
- 3D 그래픽스에서 축의 방향 : 왼손, 오른손
리스트와 링크드 리스트 차이
- 공간이 꽉 찬자면? 크기를 늘린 공간을 만들어 기존의 공간에 있던 데이터를 옮긴다. - 리스트(C에서는 벡터라고 부른다.) ⇒ 메모리 부하가 심하게 일어난다.
- 링크드 리스트는 삽입 삭제때 자주 쓴다.
- 한 공간에 데이터와 다음 데이터의 위치를 가리키는 주소가 같이 담겨있다.
- 접속자가 나왔다가 들어왔다가 하는 기능에 사용한다.
- 주소를 옮기기만 하면 되니 삽입과 삭제가 빠르다.
- 문제점 : 특정 위치를 찾을때까지 순차적으로 탐색을 해야해서, 평균 탐색시간 = 데이터 갯수다.
- 장점 : 데이터 삽입 / 삭제 빠름
- 단점 : 평균 탐색 시간이 데이터 갯수에 비례한다.
애니메이션 팁
- has exit time : 체크하면 이전 동작이 끝난 다음에 다음 동작이 시작된다. (Conditions 뿐만이 아니라 has exit time도 동작 전이 조건이다.)
- 즉, 바로 다음동작으로 넘어가냐 아니면 동작 다 끝내고 다음으로 넘어가냐
- 소울류같이 느린 게임은 무기 넣고 뺴는 동작이 있지만, 스타일리쉬하고 속도감이 빠른 게임은 빼는 동작만 있고 넣는 동작은 없다.
- Loop Pose → Loop Match 불빛 의미
- 초록색 : 첫 동작과 끝 동작이 같아 루프를 Loop Time을 체크해도 파일 깨짐이 없다.
- 주황불 : 첫 동작과 끝 동작이 달라 루프를 Loop Time을 체크하면 동작에 어긋남이 있을것이다.
- 빨간불 : Loop Time을 체크하면 파일이 깨질것이다.
애니메이션 컨트롤러 팁
- Transition → Settings →Exit Time : 애니메이션 동작 총 실행 시간
- 애니메이션이 끝나도 Exit Time 시간이 남는다면 다음동작까지 정지한다.
- Transition Duration : 애니메이션 동작 실행 시간