Войти
ПрограммированиеФорумГрафика

RenderDoc - захват игры из Steam

#0
0:38, 26 мар 2020

В образовательных целях хотел посмотреть, у кого как устроен рендерер.

Но стимовские игры не запускаются просто так, экзешник у них при запуске даёт команду стиму запустить игру и после этого закрывается (SteamAPI_RestartAppIfNecessary).

Изменение параметров запуска на что-то вроде

renderdoccmd capture -c /home/user1/renderdoc_capture_file %command% > /home/user1/log.txt 2>&1

выдаёт разного рода ошибки.

Кто-нибудь пробовал? Какие еще есть варианты?

(Пример выше написан для Linux, ищу решение и для Windows.)

#1
0:52, 26 мар 2020

romanshuvalov
> Кто-нибудь пробовал? Какие еще есть варианты?
Ставишь галку Capture Child Processes и запускаешь не целевое приложение из рендердока, а сам стим. После запуска целевого приложения из стима в рендердоке можено будет выбрать его и закпчерить.

#2
1:11, 26 мар 2020

Ок, стим глючит в плане отображения веб-контента, но ничего, можно справиться. Со своей игрой захват успешно произведён. Попробовал некоторые другие - не работают (вероятней всего они используют Direct3D). Осталось найти какую-нибудь технологически интересную игру на OpenGL.

#3
1:15, 26 мар 2020

romanshuvalov
> Попробовал некоторые другие - не работают (вероятней всего они используют
> Direct3D).
Direct3D если 11-ый - то рендер док отлично захватывает. Я так захватывал ведьмака третьего и дарксоулс третий.

#4
1:26, 26 мар 2020

Ага, уже вижу, что на D3D9 ругается и догадался, что более поздние версии может поддерживать.

Вот только современных игр у меня кажись нет :) Самое последнее это Bioshock Infinite 2013 года. Гляну его. И Portal 2 наверняка тоже на D3D11.

#5
2:23, 26 мар 2020

romanshuvalov
> Осталось найти какую-нибудь технологически интересную игру на OpenGL.
запускаешь Линукс
и все стимовские игру будут на вулкане

если лень Линукс запускать
берешь DXVK https://github.com/doitsujin/dxvk/releases
.dll-ки кидаешь рядом с иксешником любой игры(которая на DX11) и вся игра будет на Вулкан(все игры на Юнити как пример)

romanshuvalov
> Portal 2 наверняка тоже на D3D11.
Portal2 на линуксе на OpenGL(4 помоему) нативный(через встроенный транслятор) как и HL2 нативный на Ogl
Сотни других игр в стиме под Линукс тоже на OpenGL(которые не на вулкане, но это новые только)

Множество нативных игр на UE3 на OpenGL3 (без транслятора через, нативный порт UE) например Borderlands2 и Sanctum2 (это 100% Ogl3 я сам их запускал)
Xcom на OpenGL но я не знаю 3 или 4

во вспомнил еще Divinity OS на Opengl4.5(4+точно) (нативный порт для линукса)

#6
2:30, 26 мар 2020

Danilw
> запускаешь Линукс
В линуксе рендердок чё-то не хочет работать. Ну, или не со всеми играми.

В любом случае сойдет и D3D11, видно же порядок действий, все текстуры и все меши.

В линуксе тоже буду пробовать всякое разное, просто места на диске сейчас нет.

#7
2:34, 26 мар 2020

romanshuvalov
> В линуксе рендердок чё-то не хочет работать. Ну, или не со всеми играми.
у меня рендердок только на играх с Вулканом падает(и то не всех), на Опенгл работает, на Портал2 разве что не запускал, ну и я всего пару запускал, без понятия что там смотреть

#8
7:49, 26 мар 2020

не мало новых игр на вулкане, к ним можно цепляться через слой валидации

#9
9:42, 26 мар 2020

На винде dx9 и gl 2.x можно с perfstudio дебажить https://gpuopen.com/archive/gpu-perfstudio/
Интеловский профайлер тоже умеет захватывать dx9 приложения.

romanshuvalov
> И Portal 2 наверняка тоже на D3D11
Нет, Source всегда DX9 был.

#10
21:25, 26 мар 2020

mono
> На винде dx9 и gl 2.x можно с perfstudio дебажить
> https://gpuopen.com/archive/gpu-perfstudio/
Во-первых где ты там увидел возможность дебага dx9? Во-вторых - это глюкалово лучше вообще не использовать ни для чего. Даже в АМД это осознали, и в 16-ом году свернули разработку.

> Интеловский профайлер тоже умеет захватывать dx9 приложения.
Он очень печально работает с dx9. Можно сказать, что его лучше не использовать для dx9.
Для dx9 самый адекватный на мой взгляд - старый pix, который идет с DX SDK June 2010.

ПрограммированиеФорумГрафика

Тема в архиве.