小编Pat*_*iet的帖子

SDL 2.0 - 鼠标移动是垃圾事件队列

正如小标题所说,鼠标移动是垃圾事件队列,所以当我摇晃鼠标时我不能走路。有什么办法吗?仅鼠标或其他东西的不同队列。

SDL_Event event_;
    CInputManager::Instance()->SetEvent(&event_);
    InitializeGameFiles();
    while (running)
    {
        if (SDL_PollEvent(&event_))
        {
            if (event_.type == SDL_QUIT)
            {
                running = false;
            }
            else if (event_.type == SDL_MOUSEMOTION)
            {
                CCrosshair::Instance()->OnUpdate();
            }
        }
        OnUpdate(SDL_GetTicks() - currentTime);
        currentTime = SDL_GetTicks();
        OnRender();
    }

void OnUpdate(unsigned int deltaTime)
{
    //Game logic here
    CInputManager* IM = CInputManager::Instance();
    CPlayer* player = &CPlayer::PlayerControl;
    IM->UpdateHeyHeld();
    if (IM->IsKeyDown(SDLK_w))
    {
        cam[1] += speed * (deltaTime / 1000.f ); 
    }
    else if (IM->IsKeyDown(SDLK_s))
    {
        cam[1] -= speed * (deltaTime / 1000.f ); 
    }

    if …
Run Code Online (Sandbox Code Playgroud)

queue mouse events sdl sdl-2

0
推荐指数
1
解决办法
1853
查看次数

标签 统计

events ×1

mouse ×1

queue ×1

sdl ×1

sdl-2 ×1