Jak mogę debugować programy do cieniowania?


18

Debuguję shadery wierzchołków GLSL i nie mogę pozbyć się wrażenia, że ​​robię to źle.

Ogólnie rzecz biorąc, mam dwie strategie, aby zrekompensować brak śledzenia

  • Wpisuję wartości w kolor debugowania różniący się, który przekazuję do modułu cieniującego fragmenty, a następnie próbuję interpretować kolory.
  • Zmieniam kod modułu cieniującego wierzchołki i widzę, co się stanie.

Myślę, że idealnie nadrobiłbym brak śledzenia, pisząc wartości do tekstury, czytając teksturę z GPU i drukując wartości wypchane w teksturze.

Domyślam się, że mogą istnieć o wiele lepsze sposoby. Jakieś sugestie?

Odpowiedzi:



2

nVidia ma niesamowity debugger shaderów. Możesz go znaleźć i jego specyfikacje TUTAJ

Aktualizacja 2016: Dostępna jest również wtyczka Visual Studio, która najprawdopodobniej jest ich nowym wysiłkiem w zakresie pomocy programistom, tutaj: https://developer.nvidia.com/nvidia-nsight-visual-studio-edition


literówka: jego specyfikacje
o0 '.

dzięki. =) Mam rację w 70% przypadków. Obwiniam DainBramage.
Nailer

nie obsługuje jednak GLSL :(, ale wygląda na to, że mogę automatycznie przekonwertować shadery cg na glsl, może spróbować
Jonathan Fischoff

Masz rację, ale myślę, że zalety przeważają nad wadami. Poza tym kompozytor efektów jest całkiem sprytną aplikacją.
Nailer

Uszkodzony link ....
UpTheCreek
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.