簡體   English   中英

SFML輸入GetMouseX和GetMouseY無法趕上鼠標移動

[英]SFML Input GetMouseX and GetMouseY not catching on to mouse movement

我在我的應用程序中編寫了一個GUI,我注意到按鈕的注冊不是很快。 我進行了一些懶惰的調試(將鼠標的坐標發送到輸出),並且我注意到Input的GetMouseX和GetMouseY的響應速度幾乎沒有鼠標移動到某個地方時足夠快。

這個小花絮應該能夠重現(在典型的游戲循環中調用的HandleEvents函數中,顯然用工作空間中的任何內容替換App :: whatever)。

int x = App::GetApp()->GetInput().GetMouseX();
int y = App::GetApp()->GetInput().GetMouseY();
std::cout << x << " " << y << "\n";

只需在屏幕上移動鼠標並觀看輸出即可。 我不確定這是否是正確的行為,是否將其用於錯誤的目的或用於什么目的,但是我需要某種方式在任何給定時間檢索鼠標的確切位置。 任何幫助表示贊賞,謝謝。

PS:如果我緩慢移動鼠標,則不會出現此問題。

編輯:

我錯了。 該問題僅在上下文中發生,而其余部分仍在繼續。 當我阻止了大部分游戲循環並且僅包括獲取光標位置時,它工作正常。 仍然不確定什么地方出了問題。

問題是我只每幀輪詢一個事件,而不輪詢所有事件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM