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

Тема в разделе "WASM.DirectX", создана пользователем Холод, 20 ноя 2007.

  1. Холод

    Холод New Member

    Публикаций:
    0
    Регистрация:
    16 июл 2006
    Сообщения:
    42
    К примеру я перехватываю метод EndScene игрушки или какого то приложения использующего Direct3D...

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

    Как сделать так чтобы мой вертексный буффер не обробатывали шеёдеры игры? При чём свои шейдеры использовать не нужно.

    Как это можно реализовать?


    пробовал так:
    Код (Text):
    1. DEVICE.SetRenderState(D3DRS_ZENABLE, 0);
    2. DEVICE.SetVertexShader(NIL);
    3. DEVICE.SetPixelShader(NIL);
    4.  
    5. DEVICE.SetStreamSource(0, vertex_buffer, 0, sizeof(TVertex));
    6. DEVICE.SetFVF(D3DFVF_CUSTOMVERTEX);
    7.  
    8. DEVICE.SetRenderState(D3DRS_ALPHABLENDENABLE, 1);
    9. DEVICE.SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
    10. DEVICE.SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);
    11.  
    12. DEVICE.DrawPrimitive(D3DPT_TRIANGLELIST, 0, 4);
    13. DEVICE.SetRenderState(D3DRS_ALPHABLENDENABLE, 0);
    и всё равно шейдеры обрабатывают мой vertex_buffer. почему?

    и ещё интересный факт этот vertex_buffer иногда пропадает с экрана например при скриптовых сценах или при выходе в меню игры, в то время как текст выведенный таким образом:
    Код (Text):
    1. FONT.DrawTextA(nil, PChar('Надпись'), -1, @TextRect, DT_LEFT or DT_NOCLIP, D3DCOLOR_RGBA($FF, $ff, $00, $ff));
    присутствует абсолютно всегда... почему буфер то исчезает если текст присутствует?
     
  2. Cache

    Cache Алексей

    Публикаций:
    0
    Регистрация:
    10 дек 2007
    Сообщения:
    1
    Адрес:
    Москва
    У мя трабла, не как не могу понять как перехватить EndScene в игре....
    Я ух заипался.... пробовал и MadHook и не фига... у мя в madhook DLL-ка не цепляется к процессу, ибо процесс был создан не программой.

    КОРОЧЕ СМЫСЛ ХОЧУ СДЕЛАТЬ трейнер к игре так чтоб он высвечивал параметры игрока, к примеру жизнь, ману из адрессов пространства игры... Если у кого есть постучиет мне в асю 7889219 ну пипец надо... я умераю.... а вось у мя чё есть что вам надо... обмены инфой не кому не мешал ещё =)