В данном задании вам предстоит познакомиться с RenderDoc и посмотреть на реальных примерах как выглядит традиционный графический пайплайн.
- Скачайте и установите RenderDoc.
- Выберите свою любимую 3D игру с хоть сколько-то интересной графикой, предпочтительно использующую Вулкан. Также подойдёт DirectX12, DirectX11 или OpenGL. При этом слишком старые игры нам не подойдут.
Заметка: если у вас видеокарта от NVidia, вместо RenderDoc можно попробовать использовать NSight.
Захватите кадр из вашей любимой игры при помощи RenderDoc. Предпочтительно, чтобы в игре была интересная графика (майнкрафт без шейдеров -- не очень интересно) и чтобы эта игра использовала Vulkan.
Иногда запустить игру напрямую из RenderDoc не получается из-за античитов. В таком случае попробуйте использовать возможность инъекции RenderDoc в уже запущенный процесс, или попробуйте использовать NSight.
Просмотрите захват на предмет интересных техник и приёмов. В каком порядке и что рендерит игра? Как она рендерит геометрию сцены? Протыкайте все кнопочки что видите в рнедердоке, просмотрите все окошки. Что вам в них показывают? Попробуйте почитать байткод шейдеров и поредактировать их.
Напишите короткий отчёт со скриншотами о ваших находках в произвольном формате.
Делать пулл-реквест для этой задачи не нужно, достаточно прислать ваш мини-отчёт со скриншотами/картинками.
- https://renderdoc.org/ — кроссплатформенный кроссвендорный кросс-API дебаггер для графики
- https://renderdoc.org/docs/window/capture_attach.html#global-process-hook — секретный функционал RenderDoc с которым получится захватить сильно больше разных приложений
- https://developer.nvidia.com/nsight-graphics — инструмент для отладки и профилирования различных графических API для видеокарт Nvidia
- https://gpuopen.com/tools/ — инструменты для видеокарт AMD (которых не хватит для выполнения этого задания)
- https://www.intel.com/content/www/us/en/developer/tools/graphics-performance-analyzers/overview.html — инструменты для видеокарт Intel (которых не хватит для выполнения этого задания)
- https://devblogs.microsoft.com/pix/download/ — инструмент для отладки и профилирования DirectX11/12 от Microsoft