저는 DirectX 11을 배웠으며, 제가 읽은 책에서 Rasterizer가 Fragments를 출력한다고합니다. 이 Fragments는 Rasterizer (기하학적 기본 요소를 입력)의 출력물이며 사실 2D 위치 (2D 렌더링 대상 뷰)입니다.DirectX 11 조각이란 무엇입니까?
여기가 올바른 것으로 생각됩니다. 나를.
래스터 라이저는 기하학적 원형 (구체, 큐브 또는 상자, 도형 실린더, 피라미드, 삼각형 메쉬 또는 다각형 메쉬) (https://en.wikipedia.org/wiki/Geometric_primitive)을 사용합니다. 그런 다음이 프리미티브를 Render Target View (즉, 2D)에 매핑 된 픽셀 (또는 점)로 변환합니다. 이것이 바로 조각입니다. 각 Fragment에 대해 Pixel Shader를 실행하여 색상을 결정합니다.
그러나 나는 (내가 찾을 수있는) 단순한 설명이 없기 때문에 가정합니다.
그래서 내 질문은 ...
1 : 래스터 라이저는 무엇입니까? 입력은 무엇이며 출력은 무엇입니까?
2 : 래스터 라이저 출력과 관련하여 프래그먼트 란 무엇입니까?
3 조각이 float 4 값 (SV_Position) 인 이유는 무엇입니까? Render Target View를 2D 화면 공간이라면?
4 : Render Target Output (2D Screen Texture)과 어떤 관련이 있습니까?
5 : Razterizer와 Pixel Shader가 Render Target View의 모든 X, Y 위치에서 실행되지 않기 때문에 Render Target View를 지우는 이유는 무엇입니까?
감사합니다.
3D 컴퓨터 그래픽에 대한 고전 텍스트 북을 살펴 보는 것이 좋습니다. 모든 * 3D 파이프 라인이 어떻게 작동하는지에 대한 기본적인 이해를 놓치고 있습니다. 그런 배경 지식이 있으면 Direct3D API가 고전 3D 파이프 라인에 정확히 어떻게 맵핑되는지를 배울 수 있으며 하드웨어 가속 방법을 훨씬 더 강력하게 이해할 수 있습니다. 필자는 소프트웨어 질감 삼각형 스캔 루틴을 더 이상 쓰지 않으며 결코 그다지 잘하지 못합니다. 그러나 심지어 진절머리 나는 소프트웨어 구현은 여기에서 일어나고있는 일들을 많이 가르쳐 줄 것입니다. –
고전 교과서는 [폴리와 댐 댐] (https://www.amazon.com/Computer-Graphics-Principles-Practice-2nd/dp/0201848406)입니다. [Hearn and Baker] (https://www.amazon.com/Computer-Graphics-C-Version-2nd/dp/0135309247)와 마찬가지로 [와트] (https://www.amazon.com)도 좋습니다./Computer-Graphics-3rd-Alan-Watt/dp/0201398559). –
@ChuckWalbourn 감사합니다! 이 오래된 시간 서적을 권하거나 업그레이드 된 버전을 얻고 싶습니까? 나는 generic directx 책에없는 답변을 찾고있다. 불행히도, 나는 "AHA"라는 순간이 있기 전에 무언가가 작동하는 이유를 알아야합니다. – Mike5050