Public(87)
-
언릿 셰이더의 구조
언릿 셰이더에는 정보 전달을 위한 두 가지의 셰이더 함수가 존재한다. 이들의 목표는 그래픽스 파이프라인의 일부분을 스크립트화 하는 것이다. - 정점 데이터는 appdata 구조를 통해 수집하고 이는 정점 함수로 전달된다. - 정점 함수는 v2f(vertex to fragment의 약자) 데이터 구조 멤버들의 내용을 채우고 이를 프레그먼트 함수의 인자로 전달된 다. - 프레그먼트 함수는 최종 색상을 반환하고 이 값은 4가지(RGBA) 값을 갖는 하나의 정점이다.
2022.07.10 -
레스터라이저
레스터라이저는 렌더링 파이프라인에서 중요한 부분이다. 그리고 레스터라이저는 보통은 자주 이야기하지 않는 부분이기도 하다. 굳이 말하자면 이것은 이미 해결된 문제이다. 최종 이미지에서 삼각형이 차지하는 픽셀이 무엇인지 결정한다. 레스터라이저는 또한 삼각형이 차지하는 픽셀 위에 각 정점에 해당하는 다른 값들을 보간한다.
2022.07.10 -
그래픽스 파이프라인의 구조
그래픽스 파이프라인이 어떻게 구현됐으며, 특정 GPU에는 어떤 지는 매우 다양하다. 하지만 일반적인 원리는 하나로 요약 정리할 수 있다. [정점지점] 입력 조립 단계는 씬으로부터 데이터(메시,텍스처,재질)를 수집하고 파이프라인에서 사용할 수 있게끔 정리한다. [정점 셰이더] 정점 처리 단계에서는 정점과 정점의 정보를 이전 단계로부터 전달받아 각각의 정점에 정점 셰이더를 수행한다. [정점 후처리] 정점 후처리 단계에서는 좌표 공간 변환 및 화면을 넘어서지 않게끔 기본형(primitive)들을 절단한다. [기본형 조립] 기본형 조립 단계는 각 기본형마다 정점 처리 단계의 출력 데이터를 수집해 다음 단계로 보낸다. [레스터라이저] 레스터라이저는 프로그래밍 가능한 단계가 아니다. 이 단계에서는 입력 데이터로 삼..
2022.07.10