Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: [SFML 2] getSize ou getScale ?  (Lu 3060 fois)

0 Membres et 2 Invités sur ce sujet

Kromah

  • Newbie
  • *
  • Messages: 9
    • Voir le profil
    • E-mail
[SFML 2] getSize ou getScale ?
« le: Avril 13, 2012, 08:01:48 pm »
Bonjour,
alors que la version 1.6 utilisait pour fonction getSize(), la docu de la 2.0 m'indique qu'il s'agit maintenant de getScale(). Cependant un exemple qui se trouve dans le dossier de SFML 2 utilise, lui, la fonction getSize() :

sprite1.setOrigin(sf::Vector2f(texture1.getSize()) / 2.f);

De plus, cette fonction ne semble plus marcher, comme le montre le code suivant :

texture.loadFromFile("rocher3.png");
currentSprite.setTexture(texture);
cout << currentSprite.getScale().x; //Ceci me renvoie toujours pour valeur : 1 (contrairement à la version 1.6 qui fonctionnait)

Quelqu'un aurait-il quelques indices?  :)

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : [SFML 2] getSize ou getScale ?
« Réponse #1 le: Avril 13, 2012, 08:12:31 pm »
Un scale (facteur d'échelle) est un facteur multiplicatif, pas une taille absolue. Tous les drawables ont un scale de 1 par défaut ; si tu mets 2 par exemple ils doublent de taille, et à l'inverse avec 0.5 ils apparaissent deux fois plus petit.

Il n'y a pas d'équivalent direct de GetSize() dans SFML 2.0 ; cependant tu peux accéder au rectangle englobant avec sprite.getGlobalBounds().
Laurent Gomila - SFML developer