• Ищем качественного (не новичок) разработчиков Xenforo для этого форума! В идеале, чтобы ты был фулл стек программистом. Если у тебя есть что показать, то свяжись с нами по контактным данным: https://t.me/DREDD

Пачи оч важно, рендер картинки в imgui

порно с говардом <3
Пользователь
Пользователь
Статус
Оффлайн
Регистрация
16 Окт 2018
Сообщения
329
Реакции
41
В общем проблема в том, что как бы я не инициализировал (и где кстати тоже)
C++:
Expand Collapse Copy
    if (my_welc == nullptr)D3DXCreateTextureFromFileInMemoryEx(device, &logo_welc_Byte, sizeof(logo_welc_Byte), 100, 100, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_MANAGED, D3DX_DEFAULT, D3DX_DEFAULT, 0, NULL, NULL, &my_welc);
у меня всегда ошибка LNK2001 "Неразрешенный внешний символ D3DXCreateTextureFromFileInMemoryEx" хотя в этом же сурсе когда то я уже рендерил картинку и все было ок, а щас не пойму в чем проблема

C++:
Expand Collapse Copy
IDirect3DTexture9* my_welc = nullptr;


void handle(IDirect3DDevice9* device)
{

    if (my_welc == nullptr)D3DXCreateTextureFromFileInMemoryEx(device, &logo_welc_Byte, sizeof(logo_welc_Byte), 100, 100, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_MANAGED, D3DX_DEFAULT, D3DX_DEFAULT, 0, NULL, NULL, &my_welc);
    
}



extern LRESULT ImGui_ImplWin32_WndProcHandler(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);


static LRESULT __stdcall wndProc(HWND window, UINT msg, WPARAM wParam, LPARAM lParam) noexcept
{
    if (GetAsyncKeyState(config.misc.menuKey) & 1) {
        gui.isOpen = !gui.isOpen;
        if (!gui.isOpen) {
            ImGui::GetIO().MouseDown[0] = false;
            interfaces.inputSystem->resetInputState();
        }
    }
    if (gui.isOpen && !ImGui_ImplWin32_WndProcHandler(window, msg, wParam, lParam))
        return true;
    return CallWindowProc(hooks.originalWndProc, window, msg, wParam, lParam);
}


static HRESULT __stdcall present(IDirect3DDevice9* device, const RECT* src, const RECT* dest, HWND windowOverride, const RGNDATA* dirtyRegion) noexcept

{



    static bool imguiInit{ ImGui_ImplDX9_Init(device) };

    if (gui.isOpen) {

        device->SetRenderState(D3DRS_COLORWRITEENABLE, D3DCOLORWRITEENABLE_RED | D3DCOLORWRITEENABLE_GREEN | D3DCOLORWRITEENABLE_BLUE);
        IDirect3DVertexDeclaration9* vertexDeclaration;
        device->GetVertexDeclaration(&vertexDeclaration);

        ImGui_ImplDX9_NewFrame();
        ImGui_ImplWin32_NewFrame();
        ImGui::NewFrame();

        gui.render();

        ImGui::EndFrame();
        ImGui::Render();
        ImGui_ImplDX9_RenderDrawData(ImGui::GetDrawData());

        device->SetVertexDeclaration(vertexDeclaration);
        vertexDeclaration->Release();


    }
    return hooks.originalPresent(device, src, dest, windowOverride, dirtyRegion);

}


static HRESULT __stdcall reset(IDirect3DDevice9* device, D3DPRESENT_PARAMETERS* params) noexcept
{
    ImGui_ImplDX9_InvalidateDeviceObjects();
    auto result = hooks.originalReset(device, params);
    ImGui_ImplDX9_CreateDeviceObjects();
    return result;
}

хелпаните плз, жоская тема
 
у меня всегда ошибка LNK2001 "Неразрешенный внешний символ D3DXCreateTextureFromFileInMemoryEx" хотя в этом же сурсе когда то я уже рендерил картинку и все было ок, а щас не пойму в чем проблема
слинкуй d3dx9.lib

Код:
Expand Collapse Copy
#pragma comment(lib, "d3dx9.lib")
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Не разрешенный символ выдает ошибку, только если .lib не подключен
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
скачай в папку с проектом (d3d9.lib, d3dx9.lib)
и заинклудь эти либы можно взять из папки direct sdk
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
скачай в папку с проектом (d3d9.lib, d3dx9.lib)
каво, тебе достаточно просто линкануть в проект либу и инклуд dx sdk, зачем эти либы тащить куда-то в проект, да и вообще это ничем не поможет )
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Проблему решил, спасибо всем за помощь.
 
Назад
Сверху Снизу