Forum de la communauté SFML

Aide => Graphique => Discussion démarrée par: Kromah le Avril 13, 2012, 08:01:48 pm

Titre: [SFML 2] getSize ou getScale ?
Posté par: Kromah 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?  :)
Titre: Re : [SFML 2] getSize ou getScale ?
Posté par: Laurent 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().