Можно ли просмотреть задний буфер во время его отрисовки? - PullRequest
2 голосов
/ 24 ноября 2011

Используя точки останова, я пытаюсь выяснить, как работает сложное приложение, использующее буферы DirectX.
Я вижу много мест, где команда Blt обращается к заднему буферу / поверхности, и мне нужно знать, что именно она рисует в этой точке кода.

К сожалению, я могу видеть, что было нарисовано, только когда весь кадр отрисован и буферы перевернуты.

Разве нет способа увидеть задний буфер / поверхность во время отрисовки? Прежде, чем это будет перевернуто?

1 Ответ

6 голосов
/ 24 ноября 2011

Вы можете использовать PIX для Windows для устранения проблем рендеринга или узких мест производительности в графическом процессоре. PIX - это профилировщик, который предоставит вам очень подробную информацию о том, что происходит на каждом шаге во время рендеринга.

Так что это позволит вам видеть то, что отображается в заднем буфере при каждом вызове Direct3D. Вы также можете выбрать данный пиксель в конечном изображении и посмотреть, что произошло в истории этого пикселя (например, к нему применены шейдеры).

Вот несколько учебных пособий:

http://blogs.msdn.com/b/manders/archive/2006/12/15/a-painless-introduction-to-pix-for-windows.aspx

http://www.garagegames.com/community/blogs/view/14251

http://www.youtube.com/watch?v=-3PISvNTeB0&feature=player_embedded

...