Bonjour,
Je voulais utiliser la position de la souris pour déplacer un objet quelconque, j'ai donc effectué un test avec un sf::Text, seulement voilà les déplacements sont saccadés, comme si je n'avais pas assez de FPS.
J'ai donc effectué un petit test pour voir quelles valeurs je reçevait pour la position de ma souris :
#include "mainmenu.h"
MainMenu::MainMenu(const tk::EventManager::Data *data)
: RootMenu(data)
{
m_text.setString(sf::String("TEST"));
}
void MainMenu::actuateRoot()
{
if(eventData->textEntered.hasChanged)
{
m_text.setString(sf::String(eventData->textEntered.value));
}
if(eventData->focus.value && eventData->mouseInWin.value)
{
std::cout << sf::Mouse::getPosition(*eventData->targetPtr).x << "\t"
<< sf::Mouse::getPosition(*eventData->targetPtr).y << "\n";
}
}
void MainMenu::displayRoot()
{
eventData->targetPtr->draw(m_text);
}
EventManager::Data étant simplement une structure s'actualisant à chaque tour de boucle et récupérant des informations à partir de sf::Event. Voici le résultat :
531 405
x4
704 247
x8
754 98
x2
757 88
x11
etc ...
(je précise que les fonctions actuate et display sont appelées successivement à chaque tour de boucle)
Je me demande d'où viens le problème puisque j'avais bougé ma souris plutôt continuellement et sans trop de saccades.
Merci d'avance de votre aide.