Вопрос ImGui render

Забаненный
Статус
Оффлайн
Регистрация
19 Авг 2021
Сообщения
15
Реакции[?]
0
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Крашит ImGui Render из сурса Dynamism я переделал под свой сурсик скорее всего крашит вот это

Код:
void ImGuiRendering::BeginScene()
{
    ImGuiIO& io = ImGui::GetIO();

    ImGui::PushStyleVar(ImGuiStyleVar_WindowBorderSize, 0.0f);
    ImGui::PushStyleVar(ImGuiStyleVar_WindowPadding, { 0.0f, 0.0f });
    ImGui::PushStyleColor(ImGuiCol_WindowBg, { 0.0f, 0.0f, 0.0f, 0.0f });
    ImGui::Begin("##FWwhts5yus", nullptr, ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoInputs);

    ImGui::SetWindowPos(ImVec2(0, 0), ImGuiCond_Always);
    ImGui::SetWindowSize(ImVec2(io.DisplaySize.x, io.DisplaySize.y), ImGuiCond_Always);

    ImGuiWindow* window = ImGui::GetCurrentWindow();

    static int w, h;
    m_engine()->GetScreenSize(w, h);

    static auto alpha = 0;
    auto speed = 800.0f * m_globals()->m_frametime;

    if (m_engine()->IsInGame() && m_engine()->IsConnected())
    {
        auto weapon = g_ctx.local()->m_hActiveWeapon().Get();

        static float anim1 = 20;

        if (!g_ctx.local()->m_bIsScoped())
            anim1 = 20;

        if (g_cfg.esp.removals[REMOVALS_SCOPE] && g_ctx.globals.scoped && weapon->is_sniper())
        {
            static int w, h;
            m_engine()->GetScreenSize(w, h);
            g_Render->FilledRect(w / 2 - 2, h / 2, 2, 2, Color(200, 50, 80));

            anim1 += m_globals()->m_frametime * 500;

            if (anim1 >= 130)
                anim1 = 130;

            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2 + 20, h / 2), ImVec2(w / 2 + anim1, h / 2 + 2), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 170));
            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2 - 20, h / 2), ImVec2(w / 2 - anim1, h / 2 + 2), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 170));
            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2, h / 2 - 20), ImVec2(w / 2 - 2, h / 2 - anim1), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0));
            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2, h / 2 + 20), ImVec2(w / 2 - 2, h / 2 + anim1), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0));

        }
    }
        playeresp::get().paint_traverse();
}

void ImGuiRendering::EndScene()
{
    ImGuiWindow* window = ImGui::GetCurrentWindow();
    window->DrawList->PushClipRectFullScreen();

    ImGui::End();
    ImGui::PopStyleColor();
    ImGui::PopStyleVar();
}
 
[HvH ✡ Player] aka B1gPaster
Участник
Статус
Оффлайн
Регистрация
28 Дек 2017
Сообщения
943
Реакции[?]
265
Поинты[?]
0
Подключи дебаг и посмотри из за чего именно крашит. Могу предположить что один из "PushStyleVar" не закрыт
 
Участник
Статус
Оффлайн
Регистрация
30 Авг 2020
Сообщения
660
Реакции[?]
396
Поинты[?]
16K
Крашит ImGui Render из сурса Dynamism я переделал под свой сурсик скорее всего крашит вот это

Код:
void ImGuiRendering::BeginScene()
{
    ImGuiIO& io = ImGui::GetIO();

    ImGui::PushStyleVar(ImGuiStyleVar_WindowBorderSize, 0.0f);
    ImGui::PushStyleVar(ImGuiStyleVar_WindowPadding, { 0.0f, 0.0f });
    ImGui::PushStyleColor(ImGuiCol_WindowBg, { 0.0f, 0.0f, 0.0f, 0.0f });
    ImGui::Begin("##FWwhts5yus", nullptr, ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoInputs);

    ImGui::SetWindowPos(ImVec2(0, 0), ImGuiCond_Always);
    ImGui::SetWindowSize(ImVec2(io.DisplaySize.x, io.DisplaySize.y), ImGuiCond_Always);

    ImGuiWindow* window = ImGui::GetCurrentWindow();

    static int w, h;
    m_engine()->GetScreenSize(w, h);

    static auto alpha = 0;
    auto speed = 800.0f * m_globals()->m_frametime;

    if (m_engine()->IsInGame() && m_engine()->IsConnected())
    {
        auto weapon = g_ctx.local()->m_hActiveWeapon().Get();

        static float anim1 = 20;

        if (!g_ctx.local()->m_bIsScoped())
            anim1 = 20;

        if (g_cfg.esp.removals[REMOVALS_SCOPE] && g_ctx.globals.scoped && weapon->is_sniper())
        {
            static int w, h;
            m_engine()->GetScreenSize(w, h);
            g_Render->FilledRect(w / 2 - 2, h / 2, 2, 2, Color(200, 50, 80));

            anim1 += m_globals()->m_frametime * 500;

            if (anim1 >= 130)
                anim1 = 130;

            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2 + 20, h / 2), ImVec2(w / 2 + anim1, h / 2 + 2), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 170));
            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2 - 20, h / 2), ImVec2(w / 2 - anim1, h / 2 + 2), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 170));
            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2, h / 2 - 20), ImVec2(w / 2 - 2, h / 2 - anim1), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0));
            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2, h / 2 + 20), ImVec2(w / 2 - 2, h / 2 + anim1), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0));

        }
    }
        playeresp::get().paint_traverse();
}

void ImGuiRendering::EndScene()
{
    ImGuiWindow* window = ImGui::GetCurrentWindow();
    window->DrawList->PushClipRectFullScreen();

    ImGui::End();
    ImGui::PopStyleColor();
    ImGui::PopStyleVar();
}
Объясню. В подключённом тобой рендере вызываются пеинттраверс функции из world esp other esp and player esp.
Player esp у тебя переписан под имгуи рендер ? Если же нет то поэтому и крашит. Могу посоветовать лишь использовать отладку . Ну и в хуках ты BeginScene(); и EndScene(); вызвал?
Так же если у тебя вызывается
playeresp::get().paint_traverse();
Не только в этом рендере , но и в PaintTraverse хуке,то это тоже брикнет процесс.
 
Эксперт
Статус
Оффлайн
Регистрация
30 Дек 2019
Сообщения
1,970
Реакции[?]
958
Поинты[?]
19K
Крашит ImGui Render из сурса Dynamism я переделал под свой сурсик скорее всего крашит вот это

Код:
void ImGuiRendering::BeginScene()
{
    ImGuiIO& io = ImGui::GetIO();

    ImGui::PushStyleVar(ImGuiStyleVar_WindowBorderSize, 0.0f);
    ImGui::PushStyleVar(ImGuiStyleVar_WindowPadding, { 0.0f, 0.0f });
    ImGui::PushStyleColor(ImGuiCol_WindowBg, { 0.0f, 0.0f, 0.0f, 0.0f });
    ImGui::Begin("##FWwhts5yus", nullptr, ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoInputs);

    ImGui::SetWindowPos(ImVec2(0, 0), ImGuiCond_Always);
    ImGui::SetWindowSize(ImVec2(io.DisplaySize.x, io.DisplaySize.y), ImGuiCond_Always);

    ImGuiWindow* window = ImGui::GetCurrentWindow();

    static int w, h;
    m_engine()->GetScreenSize(w, h);

    static auto alpha = 0;
    auto speed = 800.0f * m_globals()->m_frametime;

    if (m_engine()->IsInGame() && m_engine()->IsConnected())
    {
        auto weapon = g_ctx.local()->m_hActiveWeapon().Get();

        static float anim1 = 20;

        if (!g_ctx.local()->m_bIsScoped())
            anim1 = 20;

        if (g_cfg.esp.removals[REMOVALS_SCOPE] && g_ctx.globals.scoped && weapon->is_sniper())
        {
            static int w, h;
            m_engine()->GetScreenSize(w, h);
            g_Render->FilledRect(w / 2 - 2, h / 2, 2, 2, Color(200, 50, 80));

            anim1 += m_globals()->m_frametime * 500;

            if (anim1 >= 130)
                anim1 = 130;

            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2 + 20, h / 2), ImVec2(w / 2 + anim1, h / 2 + 2), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 170));
            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2 - 20, h / 2), ImVec2(w / 2 - anim1, h / 2 + 2), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 170));
            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2, h / 2 - 20), ImVec2(w / 2 - 2, h / 2 - anim1), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0));
            window->DrawList->AddRectFilledMultiColor(ImVec2(w / 2, h / 2 + 20), ImVec2(w / 2 - 2, h / 2 + anim1), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 170), ImColor(255, 255, 255, 0), ImColor(255, 255, 255, 0));

        }
    }
        playeresp::get().paint_traverse();
}

void ImGuiRendering::EndScene()
{
    ImGuiWindow* window = ImGui::GetCurrentWindow();
    window->DrawList->PushClipRectFullScreen();

    ImGui::End();
    ImGui::PopStyleColor();
    ImGui::PopStyleVar();
}
у тебя в BeginScene 2 PushStyleVar, но в EndScene PopStyleVar'ом ты закрываешь лишь 1, замени PopStyleVar() на PopStyleVar(2)
 
Эксперт
Статус
Оффлайн
Регистрация
30 Дек 2019
Сообщения
1,970
Реакции[?]
958
Поинты[?]
19K
Сверху Снизу