[DX11 입문 제13장] 테셀레이션 질문 드립니다.

GPG 시리즈 관련 질답, 논의 공간.

운영자: 류광

Post Reply
비회원

테셀레이션 질문 드립니다.

전체글 글쓴이: 비회원 » 2016-08-26 15:53

셰이더쪽 몇가지 질문 올려요~ 헷갈리네요..

상수 덮개 셰이더에서..
PatchTess ConstantHS(InputPatch<VertexOut, 4> patch, uint patchID : SV_PrimitiveID)

InputPatch가 제어점 목록이 맞나요?
4개면 사각형을 뜻하는 것이고..
이 셰이더함수는 버텍스 즉 점마다 호출되는게 아니라..
도형? 마다 호출되는걸로 봐도 되나요?.

그리고 도메인 셰이더에서..
DomainOut DS(PatchTess patchTess,
float2 uv : SV_DomainLocation,
const OutputPatch<HullOut, 4> quad)

결국 덮개 세이더에서 리턴된 "OutputPatch<HullOut, 4> quad"로 최종 좌표를 구하는거 같은데..
그럼 첫번째 매개변수 PatchTess patchTess는 어떤 역활을 하나요?..

도메인 셰이더는 정점마다 호출되는걸로 알고 있는데.. 아웃풋 패치(정점 네개)가 파라미터로 오는게 이해가 안됩니다.



날씨가 갑자기 선선해 졌습니다. 감기 조심하세요~
감사합니다.

비회원

아 한가지 더 질문이요

전체글 글쓴이: 비회원 » 2016-08-26 15:57

도메인 셰이더에서..
"float2 uv : SV_DomainLocation, "의 역활이 뭔지 감이 잘 안옵니다. 아주 중요한 부분 같은데..흠...

책에는 매개변수 좌표라고 하던데..
기하학적으로 머리속에 그려지질 않네요..ㅠㅠ

베이지곡선 예제에서... 공식중 t의 역활을 하는거 같은데..

사용자 아바타
류광
전체글: 3760
가입일: 2001-07-25 09:00
사는 곳: GPGstudy
연락처:

Re: 테셀레이션 질문 드립니다.

전체글 글쓴이: 류광 » 2016-08-26 19:08

비회원 작성:셰이더쪽 몇가지 질문 올려요~ 헷갈리네요..

상수 덮개 셰이더에서..
PatchTess ConstantHS(InputPatch<VertexOut, 4> patch, uint patchID : SV_PrimitiveID)

InputPatch가 제어점 목록이 맞나요?
4개면 사각형을 뜻하는 것이고..
이 셰이더함수는 버텍스 즉 점마다 호출되는게 아니라..
도형? 마다 호출되는걸로 봐도 되나요?.

그리고 도메인 셰이더에서..
DomainOut DS(PatchTess patchTess,
float2 uv : SV_DomainLocation,
const OutputPatch<HullOut, 4> quad)

결국 덮개 세이더에서 리턴된 "OutputPatch<HullOut, 4> quad"로 최종 좌표를 구하는거 같은데..
그럼 첫번째 매개변수 PatchTess patchTess는 어떤 역활을 하나요?..

도메인 셰이더는 정점마다 호출되는걸로 알고 있는데.. 아웃풋 패치(정점 네개)가 파라미터로 오는게 이해가 안됩니다.



날씨가 갑자기 선선해 졌습니다. 감기 조심하세요~
감사합니다.
제가 이해하는 한도 안에서 답변 드리면요....

예 상수 덮개 셰이더는 13.2.1에 나와 있듯이 패치별로, 즉 D3D11_PRIMITIVE_TOPOLOGY_n_CONTROL_POINT_PATCHLIST에 해당하는 패치 기본도형별로 호출됩니다.

PatchTess는 본문에서 말한 테셀레이션 계수들의 집합입니다. 13.3.1과 13.3.1에 이 계수들이 결과에 미치는 영향을 보여주는 예들이 나와 있고요.

OutputPatch는 정점이 아니라 제어점들입니다. 예를 들어 하나의 베지에 곡선은 곡선의 형태를 결정하는 제어점들과 곡선을 구성하는 선분들의 정점들로 이루어집니다.

사용자 아바타
류광
전체글: 3760
가입일: 2001-07-25 09:00
사는 곳: GPGstudy
연락처:

Re: 아 한가지 더 질문이요

전체글 글쓴이: 류광 » 2016-08-26 19:11

비회원 작성:도메인 셰이더에서..
"float2 uv : SV_DomainLocation, "의 역활이 뭔지 감이 잘 안옵니다. 아주 중요한 부분 같은데..흠...

책에는 매개변수 좌표라고 하던데..
기하학적으로 머리속에 그려지질 않네요..ㅠㅠ

베이지곡선 예제에서... 공식중 t의 역활을 하는거 같은데..
p.541 보고 질문하신거겠죠? 아마 그 다음 페이지로 넘긴 후에 아하! 하셨을 것 같은데요:) 그림 13.4에 uv의 의미가 나와 있습니다.

Post Reply