- 수
- 명확한 시스템, 게임 엔진이 만들어내는 가상 세계는 알고보면 모든 것이 ‘수’로 구성되어 있음
- 가상 세계가 만들어내는 화려한 화면도 결국 수로 구성된 데이터 흐름에 블과
- 렌더링
- 가상 공간을 이루는 수의 규칙을 분석하고 이를 빠르게 화면에 보여주는 과정
- GPU
- 과거 그래픽 카드는 단순히 화면만 출력하는 기능만 수행
- 그래픽 카드가 렌더링에 필요한 계산을 직접 처리하도록 기능이 확장, GPU로 명명
- 그런데 언리얼 엔진이 발표한 나나이트 기술은 전통적인 GPU 공정을 사용하지 않고, 직접 렌더링 방법을 고안해 렌더링 기술의 표현력을 한 단계 진일보 시킴
- 수학
- 가상 세계에 관한 수학은 큰 틀에서 보면 선형대수학
- 가상 세계를 구성하는 선형대수학은 렌더링을 위한 공간의 구조를 분석하고 데이터를 다루는 데 고도화되어있음
- 렌더링을 중심으로 관련 이론과 기법을 다루는 학문 - 그래픽스
- 그래픽스
- 게임 기술은 실시간 렌더링 (realtime rendering) 기술로 분류
- 가상 공간의 구조를 분석해, 화면에 보이지 않는 불필요한 물체를 걸러내고 보이는 물체의 단면만 빠르게 그려내는 데 특화
- 벡터 수학
- 가상 공간을 구축, 변환, 분석
- 벡터 수학 위에서 움직이는 캐릭터를 모니터 화면에 렌더링하기 위해서는?
- 공간 / 물체 / 회전
- 공간을 다루는 수학: 벡터 → 행렬
- 가상 공간을 구축하고 변환하고 분석하는 데 사용되는 수학
- 가상 공간은 벡터로 구성, 행렬이라는 도구를 사용하면 원하는 대로 변형이 가능
- 가상공간을 설계할 수 있는 능력
- 가상 공간에 다수의 물체를 배치하고 관리하는 게임 엔진의 원리
- 가상 공간에서 물체를 다루는 작업을 transform을 설정한다고 표현
- 게임 엔진은 개발자들이 손쉽게 가상 공간을 꾸미도록 편한 사용자 인터페이스를 제공
- 가상 공간의 구조는 내적과 외적이라는 훌륭한 연산을 통해 분석할 수 있음
- 물체를 다루는 수학: 점 → 삼각형
- 물체의 외형을 설정하고 이를 모니터 화면에 표현하는데 사용
- 컴퓨터 그래픽에서는 삼각형을 사용해 물체를 표현
- 추상적인 수들로 구성된 가상 공간이 모니터 화면을 구성하는 픽셀로 변환되게 하려면 일련의 규칙을 설정하고 이를 프로그래밍 해야함 → 픽셀화
- 점이 발전해 선 → 선이 발전해 삼각형 → 삼각형이 모여 물체
- 회전을 다루는 수학: 삼각함수 → 사원수
- 가상 공간에서 안정적인 회전 변환을 구현하는 데 사용되는 수학
- 삼각함수에 익숙, 그렇다면 3차원은?
- 회전은, ‘크기가 1인 수와의 곱’이라는 짤막한 문장으로 설명 가능
- 여기에서의 ‘수’ → 일상생활에서 사용하는 실수를 넘어 다차원의 수인 복소수와 사원수를 포함
- 다차원 수에 설정된 연산의 성질을 토대로 다차원 수의 구조를 파악해야 함
- 공간을 다루는 수학: 벡터 → 행렬