희곤의 블로그

컴퓨터그래픽스 6. 데이터를 받은 GPU는 어떤 작업을 하는가 - Pipeline

데이터를 받은 GPU는 무슨 작업을 하는가? Geometry State 부분에 해당한다. 데이터는 Graphics Pipeline을 타고 내려가서 프레임 버퍼에 쓰여진다. Pipeline이란 Vertex에서 Pixel이 되는 흐름이다. Pipeline 과정을 살펴보자. 위 그림에서 초록색은 프로그래머가 프로그래밍 가능한 부분이다. 노란색은 프로그...

컴퓨터그래픽스 5. 그래픽스 API는 어떻게 사용하는가

그래픽스 API는 어떻게 사용하는가? 보통 그래픽스 API에서 사용자가 해야할 것은 다음과 같다. 데이터 만들기 : VRAM에 데이터 공간 (Buffer) 만들기. 데이터 보내기 / 업데이트하기 : 만든 공간에 데이터 보내거나 업데이트하기 Setup Parameters : 셰이더 프로그램 선택, 렌더링 옵션을 설정한다. 그리기 명령!...

컴퓨터그래픽스 4. Object를 3D Model로 표현하는 방법이 무엇일까

Object를 어떻게 3D Model로 표현하는가? Object를 컴퓨터가 이해 가능한 Model로 표현하는 방법은 생각보다 다양하다. 현재는 Vertex (정점)을 이어 선(Edge)과 도형(Primitive)를 만드는 방식을 채택한다. 왜 이 방법이 채택되었는가? GPU의 병렬성을 이용하기 가장 용이하고, 데이터 구조가 간단하기 때문이다. 또...

컴퓨터그래픽스 3. 프레임 버퍼에 들어갈 픽셀 데이터를 어떻게 만들까

프레임 버퍼에 들어갈 픽셀 데이터를 어떻게 만드는가? 현실의 Object는 컴퓨터에서 3D Model로 표현한다. 3D Model을 어떻게 표현하는진 추후에 설명하겠다. 이 3D Model을 배치하고, 움직이며 Scene을 구성한다. Scene의 필수 구성 요소로는 3D Objects, Cameras, Lights가 있어야 한다. 이후 Models 데...

컴퓨터그래픽스 2. Image를 보여주는 Display는 어떤게 있을까

이미지를 보여주는 하드웨어는 무엇인가? Display는 과거 CRT에서 시작하여, 현재는 대부분 LCD를 사용한다. CRT는 무엇인가? CRT는 전자 빔을 쏴서 모니터 끝에 있는 형광 물질을 맞춰 빛을 내는 원리로 화면을 만들어낸다. CRT 모니터 맨 뒤에 각각 R, G, B에 해당하는 전자 빔 세개가 존재한다. 이 전자빔의 세기를 조절하여 한...

컴퓨터그래픽스 1. 컴퓨터 그래픽스란 무엇일까

컴퓨터 그래픽스란 무엇인가? 쉽게 말해, 내 머릿 속에 있는 생각이나 아이디어 (Concepts)를 컴퓨터로 이미지를 생성하는 모든 기술을 컴퓨터 그래픽스라고 정의한다. 그래픽스의 일반적인 과정은 다음과 같다. 개념 (Concepts) -> 계산 모델 (Computational Model) : 내 생각을 컴퓨터가 이해 가능한 데이터로 변환한...