목록분류 전체보기 (152)
개발하는 리프터 꽃게맨입니다.
이 장에서는 실시간 그래픽의 핵심 구성 요소인 그래픽 렌더링 파이프라인 (간단히 파이프라인)에 대해서 소개한다.렌더링 파이프라인의 주요 기능은 '가상 카메라', '3차원 객체', '광원' 등을 제공받아 2차원 이미지를 생성하고 렌더링하는 것이다. 따라서 '렌더링 파이프라인'이란 실시간 렌더링의 기본적인 도구이다. (핵심 기술이라고 설명할 수 있다.) 렌더링된 이미지에서 객체의 위치와 형태는 오브젝트의 기하학적 모양(Geometry), 환경의 특성, 카메라의 배치등에 따라 결정되고, 오브젝트의 외관은 재질 속성(Material), 광원, 텍스처 및 음영 방정식에 의해 결정된다.(음영 방정식 Shading equation 은 광원, 물체 표면, 관찰자 간의 상호작용을 기반으로 최종 색상을 계산하는 방정식을..
실시간 렌더링은 컴퓨터에서 이미지를 빠르게 생성하는 것을 다룬다. 화면에 이미지가 나타나면, 사용자는 행동하고 반응하며, 이 피드백이 다음에 생성되는 이미지를 결정한다.이러한 반응과 렌더링은 Cycle은 충분히 빠른 속도로 이루어져야 한다. 그러면 사용자는 개별 이미지를 보는 것이 아니라 역동적인 과정에 몰입할 수 있게 된다. 이미지가 표시되는 속도(rate)는 FPS(초당 프레임 수) 또는 Hz(헤르츠)로 측정된다.1 FPS에서는 상호작용의 느낌이 거의 없으며, 사용자는 새로운 이미지가 갱신되기까지의 텀을 고통스럽게 인식하게 된다.6 FPS 부터 상호작용의 느낌이 형성되기 시작하며, 비디오 게임은 30, 60 , 72 .. 혹은 그 이상의 FPS 를 목표로 한다. 영화 프로젝터는 24 FPS로 영상을 ..
테셀레이션 단계를 사용하지 않는다고 가정하면, 지오메트리 쉐이더 단계는 정점 쉐이더와 픽셀 쉐이더 단계 사이에 위치한 선택적 단계이다. 정점 쉐이더가 정점을 입력으로 받는 반면, 지오메트리 쉐이더는 전체 프리미티브를 입력으로 받는다. 예를 들어, 삼각형 목록을 그리는 경우, 지오메트리 쉐이더 프로그램은 목록의 각 삼각형 T에 대해 실행된다.for(UINT i = 0; i 각 삼각형의 세 정점이 지오메트리 쉐이더에 입력되며, 지오메트리 쉐이더는 프리미티브 목록을 출력한다. 정점 쉐이더가 정점을 생성하거나 삭제할 수 없는 것과 달리, 지오메트리 쉐이더의 주요 이점은 기하학을 생성하거나 삭제할 수 있다는 것이다. 이는 GPU에서 흥미로운 효과를 구현할 수 있게 해준다. 예를 들어, 입력된 프리미티브는 하나 ..
스텐실 버퍼는 몇 가지 특수 효과를 구현하기 위해 사용할 수 있는 off-screen 버퍼이다.스텐실 버퍼는 백 버퍼와 깊이 버퍼와 동일한 해상도를 가지며, 스텔실 버퍼의 ij 번째 픽셀은 백 버퍼와 깊이 버퍼의 ij번째 픽셀과 대응된다. ID3D11DepthStencilView.. 등의 이름에서 보았다시피 스텐실 버퍼와 깊이 버퍼와 함께 동작한다.스텐실 버퍼는 스텐실처럼 작동하여 특정 픽셀 조각이 백버퍼로 렌더링되는 것을 차단한다. 예를 들어, 거울을 구현할 떄, 거울의 평면을 기준으로 객체를 반사해야 하지만, 반사된 이미지는 거울 안에만 그려져야 한다. 스텐실 버퍼를 사용하여 반사가 거울에 그려지는 경우가 아니면 렌더링을 차단할 수 있다. 스텐실 버퍼는 ID3D11DepthStencilState ..