Bonjour !
A force d'utiliser la SFML (bien que cela fasse maintenant un moment que je n'ai pas trop touché au C++), j'ai fini par comprendre certaines choses sur son fonctionnement, notamment le fait qu'une des clefs de la performance se trouve dans la limitation des appels à la fonction draw().
Ainsi j'ai compris le tuto qui explique comment créer un niveau sous forme de tilemap en utilisant un sf::VertexArray plutôt qu'un sf::Sprite par tile.
Maintenant, j'aimerais savoir si je dois rechercher toujours au maximum le passage par les VertexArray ? Exemple : prenons le cas farfelu où je voudrais me lancer dans la création d'une bibliothèque d'UI basée sur SFML, une collection de "widgets" tels des boutons et zones de textes éditables ou non, des "fenêtres" affichées à l'intérieur de la RenderWindow, avec du drag & drop à la souris.
Est-ce qu'il est réaliste de vouloir "assembler" tout ça, ou une grande partie de tout ça, en un VertexArray, en sachant que certains éléments peuvent bouger ?
Dans un autre cas, qui pourrait être inclus dans ce premier exemple, celui où je voudrais faire des boîtes de textes dont les retours à la ligne s'adaptent au redimensionnement de la taille de la boîte. Est-ce que là, je devrais créer ma propre classe plutôt que de passer par sf::Text, et ainsi finir avec un VertexArray ?
Est-ce que tout ça est mélangeable ? Est-ce que je peux avoir des éléments qui bougent, qui font des rotations, mais sont au final toujours inclus dans un VertexArray général qui gère l'affichage ?
Finalement la réponse peut simplement se résumer à "oui ou non". Comme il reste un flou dans ma compréhension, je voudrais seulement savoir si ma recherche est orientée dors et déjà vers une impasse, ou une solution over-compliquée, ou bien si c'est raisonnable.
Je vous remercie pour votre lecture !
Ren.