2017-10-12 32 views
0

나는 최근에 셰이더를 배웠다. 간단히 말하면, 첫 번째로, 정점 정보를 저장하는 버퍼를 만듭니다. 그런 다음 셰이더 파일을 만들고 컴파일하십시오. 마지막으로 셰이더와 그리기를 설정합니다. 그러나 코드를 공부하면 셰이더와 버퍼 사이에 직접 연결이 없으며 버퍼에 정점이 있다고 생각합니다. 그래서 궁금합니다 셰이더가 어떻게 정점 정보를 읽을 수 있습니까? 그냥 셰이더가 기존 버퍼를 읽습니까? 나는 내 의도가 잘 전달 될지 확신하지 못한다. 나는 영어를 잘 못하기 때문에. 너희들이 나를 이해하기를 바란다. 당신은 InputLayout에 대해 언급되지 않은셰이더가 어떻게 정점 정보를 읽을 수 있습니까?

+0

이것은 Direct3D의 파이프 라인 및 버전에 따라 달라집니다. – Asesh

+0

기본적으로 정점 데이터 (위치, 텍스처 좌표, 색, 접선 등)를 제공합니다. 이 데이터를 버텍스 쉐이더에 바인딩합니다. 당신이하는 일은 당신이 말하는 Direct3D 버전에 달려 있습니다. – Asesh

+0

[https://learnopengl.com/#!Getting-started/Shaders](https://learnopengl.com/#!Getting-started/Shaders) 읽기) – Rabbid76

답변

0

, 맥락에서 정의하는 것이 필요하다 렌더링하기 : 버텍스 버퍼, 색인 버퍼 (옵션), 데이터가 버텍스 쉐이더 매개 변수에 배포하는 방법 입력 레이아웃 (, VS 및 PS