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

Auteur Sujet: VertexArray & Append  (Lu 2477 fois)

0 Membres et 1 Invité sur ce sujet

Develog

  • Full Member
  • ***
  • Messages: 100
    • Voir le profil
    • E-mail
VertexArray & Append
« le: Août 06, 2014, 03:33:18 pm »
Bonjour,

J'essaie d'utiliser la fonction append de VertexArray pour optimiser mon programme.
Mais j'ai du mal à comprendre comment cela marche ...

Quand on fait : vertexarray.append(vertex) 
On ajoute une vertex à notre vertexarray n'est ce pas ?

Actuellement j'ai ce code :

void Tile::appendTile(int posX, int posY)
{
    if (!textureTileset.loadFromFile("Resources/Tileset.png"))
        std::cout << "Error Loading" << std::endl;

    vertex.position = sf::Vector2f(posX * TILESIZE, posY * TILESIZE);
    vertex.texCoords = sf::Vector2f(128,0);
    tiles.append(vertex);

    vertex.position = sf::Vector2f(posX * TILESIZE + TILESIZE, posY * TILESIZE);
    vertex.texCoords = sf::Vector2f(192,0);
    tiles.append(vertex);

    vertex.position = sf::Vector2f(posX * TILESIZE + TILESIZE, posY * TILESIZE + TILESIZE);
    vertex.texCoords = sf::Vector2f(192,64);
    tiles.append(vertex);

    vertex.position = sf::Vector2f(posX * TILESIZE, posY * TILESIZE + TILESIZE);
    vertex.texCoords = sf::Vector2f(128,64);
    tiles.append(vertex);
}
 


Où tiles est un vertexarray et vertex une vertex

Mais à l'écran je n'ai que des points quand je fais appel à cette fonction ... Faut il faire quelque chose par la suite pour lié les vertex entre elles ?


Merci d'avance

G.

  • Hero Member
  • *****
  • Messages: 1592
    • Voir le profil
Re : VertexArray & Append
« Réponse #1 le: Août 06, 2014, 04:19:02 pm »

Develog

  • Full Member
  • ***
  • Messages: 100
    • Voir le profil
    • E-mail
Re : VertexArray & Append
« Réponse #2 le: Août 06, 2014, 04:39:39 pm »
Oui en effet mais là je m'aide du code source de Laurent pour le tilemap que voici : https://github.com/SFML/SFML/wiki/Source:-TileMap

Et à aucun moment il défini que c'est un quad ?

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : VertexArray & Append
« Réponse #3 le: Août 06, 2014, 05:02:56 pm »
C'est le wiki, n'importe qui peut y poster des articles. Base toi plutôt sur les exemples, tutoriels et doc officiels pour commencer.

Mais sinon, dans le code source que tu cites, il y a bien un sf::Quads. Il est bien caché, c'est tout ;)
Laurent Gomila - SFML developer

Develog

  • Full Member
  • ***
  • Messages: 100
    • Voir le profil
    • E-mail
Re : VertexArray & Append
« Réponse #4 le: Août 06, 2014, 05:52:31 pm »
Justement je me permet de dire qu'il manque peut être un exemple pour la fonction append. Les seuls exemples que j'ai trouvé sur internet étaient des erreurs ^^
Est ce que vous pouvez me donner un lien où c'est bien expliqué ou même un exemple concret ? s'il vous plait :)

Et je vais partir à la chasse du sf::Quads

Merci de votre aide !

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : VertexArray & Append
« Réponse #5 le: Août 06, 2014, 06:17:01 pm »
Il n'y a rien à expliquer à propos d'e la fonction append, elle ajoute juste un élément au tableau de vertex. Si les autres exemples utilisent resize ou autre, c'est pareil. Au final tu as un tableau avec un certain nombre de vertex dedans, ce qui est important à comprendre c'est comment utiliser ce tableau pour dessiner ou autre.

// ça...
sf::VertexArray va;
va.setPrimitiveType(sf::Quads);
va.append(sf::Vertex(...));
va.append(sf::Vertex(...));

// ...c'est pareil que...
sf::VertexArray va(sf::Quads);
va.resize(2);
va[0] = sf::Vertex(...);
va[1] = sf::Vertex(...);

// ...ou encore...
sf::VertexArray va(sf::Quads, 2);
va[0] = sf::Vertex(...);
va[1] = sf::Vertex(...);

Citer
Et je vais partir à la chasse du sf::Quads
Ctrl+F est ton ami...
Laurent Gomila - SFML developer

Develog

  • Full Member
  • ***
  • Messages: 100
    • Voir le profil
    • E-mail
Re : VertexArray & Append
« Réponse #6 le: Août 06, 2014, 06:22:30 pm »
Merci beaucoup ;)
C'est vrai qu'on a pas besoin d'explication ...
Du coup je n'ai pas eu besoin du Ctrl + F, j'ai trouvé grâce à votre aide !

Merci Laurent !!