İmgui Menü Camera Problem!

SantaHacks

Silver Üye
Katılım
16 Mar 2020
Mesajlar
95
Beğeniler
7
Menüyü açıyorum setcursorpos yöntemiyle oyunun ortaya sabitleme sorununu düzeltiyorum mouseyi haraket ettirince oyun mouseyi takip ediyor istediğim menü açık iken mouseyi kullandığım zaman oyunda hiç bir tıklama ve haraket algılamasın
 
extern LRESULT ImGui_ImplWin32_WndProcHandler(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
LRESULT __stdcall WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
if (Globals::ShowMenu)
{
if (Globals::ShowMenu && ImGui_ImplWin32_WndProcHandler(hWnd, msg, wParam, lParam))
return true;

if (Globals::ShowMenu)
{
switch (msg)
{
case WM_INPUT:
case WM_MOUSEMOVE:
case WM_MOUSEWHEEL:
case WM_MOUSEHWHEEL:
case WM_LBUTTONDOWN:
case WM_LBUTTONUP:
case WM_RBUTTONDOWN:
case WM_RBUTTONUP:
case WM_MBUTTONDOWN:
case WM_MBUTTONUP:
case WM_XBUTTONDOWN:
case WM_XBUTTONUP:
return true;

case WM_KEYDOWN:
case WM_KEYUP:
case WM_CHAR:
if (wParam != 0x11)
return true;
break;
}
}
}

return CallWindowProcA(game_wndproc, hWnd, msg, wParam, lParam);
}


BOOL WINAPI hkSetCursorPos(int X, int Y)
{
if (Globals::ShowMenu)
return TRUE;
return oSetCursorPos(X, Y);
}

io.MouseDrawCursor kulanarak mouseyi aktif ediyorum bunları kullanıyorum mouse için oyun d3d9
 
aşşağıdaki gibi dener misin
C++:
extern LRESULT ImGui_ImplWin32_WndProcHandler(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);

LRESULT __stdcall WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    if (Globals::ShowMenu)
    {
        if (ImGui_ImplWin32_WndProcHandler(hWnd, msg, wParam, lParam))
            return true;

        switch (msg)
        {
            case WM_INPUT:
                // güncel
                return 0;

            case WM_MOUSEMOVE:
            case WM_MOUSEWHEEL:
            case WM_MOUSEHWHEEL:
            case WM_LBUTTONDOWN:
            case WM_LBUTTONUP:
            case WM_RBUTTONDOWN:
            case WM_RBUTTONUP:
            case WM_MBUTTONDOWN:
            case WM_MBUTTONUP:
            case WM_XBUTTONDOWN:
            case WM_XBUTTONUP:
                return true;

            case WM_KEYDOWN:
            case WM_KEYUP:
            case WM_CHAR:
                if (wParam != 0x11)
                    return true;
                break;
        }
    }

    return CallWindowProcA(game_wndproc, hWnd, msg, wParam, lParam);
}

BOOL WINAPI hkSetCursorPos(int X, int Y)
{
    if (Globals::ShowMenu)
        return TRUE;
    return oSetCursorPos(X, Y);
}
 
bak oyuna başladım ya menüyü açtığımda mouseyi haraket ettirince direkt kamera dönüyor bu videodaki gibi işte menüde tıkladıgımdada ateş ediyor gene bunlar benim için önemli
 
g
aşşağıdaki gibi dener misin
C++:
extern LRESULT ImGui_ImplWin32_WndProcHandler(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);

LRESULT __stdcall WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    if (Globals::ShowMenu)
    {
        if (ImGui_ImplWin32_WndProcHandler(hWnd, msg, wParam, lParam))
            return true;

        switch (msg)
        {
            case WM_INPUT:
                // güncel
                return 0;

            case WM_MOUSEMOVE:
            case WM_MOUSEWHEEL:
            case WM_MOUSEHWHEEL:
            case WM_LBUTTONDOWN:
            case WM_LBUTTONUP:
            case WM_RBUTTONDOWN:
            case WM_RBUTTONUP:
            case WM_MBUTTONDOWN:
            case WM_MBUTTONUP:
            case WM_XBUTTONDOWN:
            case WM_XBUTTONUP:
                return true;

            case WM_KEYDOWN:
            case WM_KEYUP:
            case WM_CHAR:
                if (wParam != 0x11)
                    return true;
                break;
        }
    }

    return CallWindowProcA(game_wndproc, hWnd, msg, wParam, lParam);
}

BOOL WINAPI hkSetCursorPos(int X, int Y)
{
    if (Globals::ShowMenu)
        return TRUE;
    return oSetCursorPos(X, Y);
}
gene aynı sorun

o videoda ne görüyorsan aynısı mouseyi haraket ettirdim ya oyuna başladıktan sonra menü açınca tıpa tıp aynısı oluyor
 

Şuanda konuyu görüntüleyen kullanıcılar

Geri
Üst Alt