[21-05-08 TIL] 게임 수학의 이해 필기

O2o2✨·2021년 5월 8일
0

TIL

목록 보기
4/25

강의 바로가기

1강 | 공간의 수학 : 게임 수학의 개요


  • 벡터: 벡터 공간의 원소

  • 스칼라: 체 집합의 원소

  • 변환(transformation)
    선형변환(linear transformation): 선형성을 가진 변환

  • 현실세계의 공간은 하나, 게임의 가상 공간은 무한대

  • 행렬(Matrix): 선형변환을 수행하는 도구
    스스로 행렬을 설계할 수 있도록 기본원리를 이해하는 것이 중요함

  • 평면의 방정식 : ax+by+cz+d = 0

  • 절두체(Frustum) : 카메라가 보이는 범위

아래 두 개가 중요합니다
1. 수의 체계와 벡터 공간
2. 선형 변환과 행렬


2강 | 물체의 수학 I : 이동 변환의 구현 원리


  • 물체에 대한 수학이란?
    게임에서 사용하는 가상공간 체계와
    물체를 구성하는데 사용하는 수학

  • 벡터공간
    게임이 사용하는 가상 공간의 본질

벡터공간은 어떤 대상의 성질을 표현하는데 사용되는 데이터

벡터공간의 공간과 현실세계의 공간은 다른 개념이다
하지만 벡터공간으로 현실세계의 공간을 만들어야 된다
답) 공간의 차원을 늘린다

2차원 물체의 표현: 2차원 (면)
이동의 구현: 1차원
=> 총3차원의 공간을 활용

3차원의 물체를 표현하려면?
3차원 물체의 표현: 3차원
이동의 구현: 1차원
=> 총4차원의 공간을 활용

수학의 벡터는 게임을 구현하기 위해
점 또는 (이동)벡터 중 하나로 사용된다.

게임은 벡터공간을
1. 물체를 표현하는 공간 = 아핀공간
2. 이동을 위한 공간
으로 분리해 관리한다.

  • 벡터공간의 부분공간인 아핀공간에 속한 벡터
    : 점(Point)

  • 벡터공간의 다른부분공간인 이동을 위한 공간에 속한 벡터
    : 벡터(Vector) 또는 이동 벡터

  • 수학적 벡터: 벡터 공간의 원소
  • 물리적 벡터: 크기와 방향을 가진 대상
    =>이동 벡터는 물리적 벡터에 해당

점 -> 이동벡터 -> 점

두 점사이에는 하나의 벡터가 대응된다.
v = P2 - P1

게임공간 = 월드공간(3차원으로 보이지만 실제론 4차원)
움직이지 않는다.
3차원: 물체 게임공간은 움직일 일이 없어서 사실 3차원만 사용 + 1차원: (0, 0, 0) 기본값

물체를 배치하는 과정

물체는 아핀공간의 점들로 구성돼있다.
점들을 관리하기 위해 이것들을 포괄하는 공간이 필요하다. (4차원)

물체의 점을 담는 공간 = 로컬 공간
월드 공간과 다르게 물체가 움직이기 때문에 나머지 한차원을 활용한다.
물체의 점을 담는 3차원 + 1차원 (x, y, z)

실제로는 월드공간에 로컬공간을 덮어서 포갠다고 생각하면 된다.
로컬공간은 물체와 언제나 함께다닌다.
한차원공간을 이용해서 로컬공간을 이동시키면 월드공간에서 물체가 이동되는것처럼 보인다.

  • 정리:
    4차원 공간을 생성하고,
    3차원 공간으로 대상을 표현하고
    확장한 1차원 공간으로 이동을 구현

벡터는 용도에 따라서
물체를 구성하는데 사용하는 점
물체를 이동하는데 사용하는 (이동)벡터로
나누어집니다.

여기서 월드공간은 게임 세계공간이고
로컬공간은 물체를 담고있는 박스같은것으로 생각하면 됨.


3강 | 물체의 수학 II : 정점과 삼각형


profile
리액트 프론트엔드 개발자입니다.

0개의 댓글