셰이더 프로그램을 어떻게 디버깅 할 수 있습니까?


18

GLSL 정점 셰이더를 디버깅하는 과정에 있으며 내가 잘못하고 있다는 느낌을 흔들 수 없습니다.

일반적으로 추적 부족을 보완하는 두 가지 전략이 있습니다.

  • 조각 셰이더에 전달하는 다양한 색상을 디버그 색상에 넣고 색상을 해석하려고합니다.
  • 버텍스 쉐이더 코드를 변경하고 어떻게되는지 봅니다.

텍스처에 값을 쓰고 GPU에서 텍스처를 읽고 텍스처에 채워진 값을 인쇄하여 추적 부족을 보완하는 것이 이상적이라고 생각합니다.

내 생각 엔 더 좋은 방법이있을 것입니다. 어떤 제안?

답변:



2

nVidia에는 ​​멋진 셰이더 디버거가 있습니다. 여기에서 찾을 수 있습니다.

2016 업데이트 : Visual Studio 플러그인도 있습니다. 이는 아마도 개발자를 돕기위한 새로운 노력 일 것입니다 : https://developer.nvidia.com/nvidia-nsight-visual-studio-edition


오타 : 사양
O0을 '.

고마워. =) 나는 그 시간의 70 %를 맞습니다. 나는 DainBramage를 비난합니다.
일러

GLSL 지원은 없지만 :(하지만 cg 셰이더를 glsl로 자동 변환 할 수있는 것처럼 보입니다.
Jonathan Fischoff

당신은 그것에 대해 옳지 만 장점은 단점보다 더 중요하다고 생각합니다. FX 작곡가는 꽤 멋진 앱입니다.
Nailer

끊어진 링크 ....
UpTheCreek
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.