본 내용은 [Rookiss - 게임 수학과 DirectX12] 강의를 토대로 작성하였습니다.
- 그래픽스
- 3D 세상에 물체를 배치하고 그것이 우리의 2D 모니터 화면에 출력되는 전 과정을 공부하는 학문
- 그래픽스 관련 회사 기본 질문
게임 규칙과 연산을 하는 것 : CPU, 그래픽과 관련된 연산을 하는 것: GPU
- CPU와 GPU의 차이? (가끔 면접 문제)
- CPU
- 복잡한 연산 잘하고 뛰어난 기억력
- 그러나 ALU(실질적으로 산술 연산하는 것)가 어마어마하게 많지는 않음
- 소수 고급 인력 집단이라고 생각하면 편함
- 일반적인 계산함 ( ex. 운영체제 실행, 게임, 윈도우 키기, 문서 작업 하기 등의 범용적인 연산)
- GPU
- 대부분의 영역 자체를 ALU가 차지하고 있음
- 계산기 같은 역할
- 값싼 인력들이 모인 인력 사무소
- 간단한 연산을 많은 수의 ALU들이 함
- 연관성이 없는 일들(하지만 일감 자체는 굉장히 많은)을 병렬로 처리 (ex. 암호학, 인공지능, 비트코인 채굴 등의 연산)
- CPU
컴퓨터 그래픽스에서 GPU가 있으면 일감을 떠넘기기 좋은 시스템임
일감을 GPU에게 떠넘기는 건 좋은데 아무렇게나 외주를 날릴 수 없고 정해진 규칙에 따라 외주를 날려야 함
이 단계가 렌더링 파이프라인
- GPU마다 스펙이 다 다르면 GPU에 연산 요청하기가 힘듦
- DirectX ?
- Microsoft에서 제공하는 GPU 외주 라이브러리
GPU 제조사들은 Microsoft와 협업을 해서 DirectX 스펙에 맞춰서 GPU를 제조
개발자들은 GPU 스펙을 하나씩 다 따질 필요 없이 DirectX에 맞게 코드를 짜면 됨
'그래픽스ㆍDirectX' 카테고리의 다른 글
짐벌락과 쿼터니언 + Spherical Linear Interpolation (0) | 2022.05.21 |
---|---|
렌더링 파이프라인 - 래스터라이저와 프래그먼트 셰이더 (0) | 2022.05.21 |
렌더링 파이프라인 - 정점 조립과 정점 변환 (0) | 2022.05.20 |
셰이더 (0) | 2022.05.20 |
렌더링 파이프라인 - 그래픽스 API 초기화와 드로우 콜 (0) | 2022.05.20 |
댓글