Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Вопрос Swapchain сигнатура

  • Автор темы Автор темы zzodiac
  • Дата начала Дата начала
по нормальному сделай хуки
я не ебу чо у меня с сурсом чита но после свапчейна грузятся хуки но меню не ворк но раздел хуесосинга запиздит меня
swapchain - 48 89 2D ? ? ? ? 48 C7 05 ? ? ? ? ? ? ? ? C7 05 ? ? ? ? ? ? ? ? 89 2D (rendersystem.dll)
бог, но как ты сделал это?
 
я не ебу чо у меня с сурсом чита но после свапчейна грузятся хуки но меню не ворк но раздел хуесосинга запиздит меня

бог, но как ты сделал это?
открыл иду
а ты презент хотя бы хукнул?
Interfaces::Swapchain->swapchain, 8, HookedPresent, Present

cpp | Interfaces:
Expand Collapse Copy
if (FAILED(Swapchain->swapchain->GetDevice(__uuidof(ID3D11Device), (void**)&Device))) {
        log_error("failed to get device from swapchain");
        assert(false);
    }
    else
        Device->GetImmediateContext(&DeviceContext);

    static const auto GetCorrectDXGIFormat = [](DXGI_FORMAT format) {
        switch (format) {
        case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB:
            return DXGI_FORMAT_R8G8B8A8_UNORM;
        }

        return format;
    };

    DXGI_SWAP_CHAIN_DESC sd;
    Swapchain->swapchain->GetDesc(&sd);

    ID3D11Texture2D* BackBuffer = nullptr;
    if (SUCCEEDED(Swapchain->swapchain->GetBuffer(0, IID_PPV_ARGS(&BackBuffer)))) {
        if (BackBuffer) {
            D3D11_RENDER_TARGET_VIEW_DESC desc{};
            desc.Format = static_cast<DXGI_FORMAT>(GetCorrectDXGIFormat(sd.BufferDesc.Format));
            desc.ViewDimension = D3D11_RTV_DIMENSION_TEXTURE2D;

            if (FAILED(Device->CreateRenderTargetView(BackBuffer, &desc, &RenderTarget))) {
                log_error("failed to create rendertargetview, retrying..");
                desc.ViewDimension = D3D11_RTV_DIMENSION_TEXTURE2DMS;

                if (FAILED(Device->CreateRenderTargetView(BackBuffer, &desc, &RenderTarget))) {
                    log_error("failed to create rendertargetview, retrying..");

                    if (FAILED(Device->CreateRenderTargetView(BackBuffer, &desc, &RenderTarget))) {
                        log_error("failed to create rendertargetview");
                        assert(false);
                    }
                }
            }

            BackBuffer->Release();
            BackBuffer = nullptr;
        }
    }
 
Назад
Сверху Снизу