Bonjour à tous.
Dans mon jeu j'ai un petit soucis de précision. En effet quand je veux récupérer les coordonnées relatives du pointeur de la souris par rapport à un sprite (les coordonnées seront donc à (0;0) quand la souris sera en haut à gauche du sprite), j'ai un décalage de 1px pour les abscisses.
Pour récupérer les coordonnées relatives de la souris je fais :
sf::Vector2f coordonneesRelativesSouris(sf::Mouse::getPosition(m_fenetre).x - getPosition().x, sf::Mouse::getPosition(m_fenetre).y - getPosition().y);
(je me trouve dans une classe héritant de sf::Sprite)
Quand la souris est au bord gauche du sprite, coordonneesRelativesSouris.x est égal à 1 alors qu'il devrait faire 0.
Bien sûr pour corriger le problème il suffit d'enlever 1 aux coordonnées en x. Cependant j'aimerais savoir d'où vient ce décalage. Est-ce que ça vient de la fonction getPosition() de la souris ou du sprite, ou est ce que le pixel pointé par la souris ne correspond pas au pixel du curseur se trouvant en haut à gauche ? A moins qu'il y ai une colonne de pixels de créée avant la texture du sprite ?
Merci d'avance.
PS : j'utilise SFML 2.0 RC.