Показать сообщение отдельно

  #1  
Старый 24.12.2025, 20:53
rhjossss
Новичок
Регистрация: 28.07.2024
Сообщений: 3
С нами: 946126

Репутация: 1
По умолчанию

Объясните пожалуйста, как правильно хукать Present (D3D9 Methods Table: [17] Present) под internal cheat.

чтобы рисовать к примеру ImGui, в пресенте, но при это чтобы obs, bandicam и другие подобные приложения с записью экрана который используют d3d9(capture) рисовали чистый кадр на записе

upd.

решил проблему помог @Receiver, отдельная благодарность ему за это

вот сама логика -

SAMP vTable[17]: 0x651261E8 (это SAMP'овский враппер)

реальный Present в d3d9.dll: 0x71046130

логика

1. Игра вызывает vTable[17] → hkPresentSAMP (наш хук, ничего не рендерим)

2. OBS хук (если есть) захватывает чистый кадр

3. SAMP wrapper → вызывает реальный Present в d3d9.dll

4. hkPresentReal (наш хук) - рендерим оверлей

5. Настоящий Present — показываем кадр с оверлеем игроку

OBS захватывает на шаге 2, чит рендерит на шаге 4 - после OBS
 
Ответить с цитированием