Bonjour à tous,
Je débute en c++ et avec la sfml
. Et j'apprends en testant la création d'un mini rpg pour moi même.
Avec l'aide du tuto je me suis déjà construit un éditeur de tilemap et la je suis sur la partie jeu.
Mon problème est le suivant en voulant tracer des carrés par dessus les tiles avec LinesStrip le rendu laisse apparaitre des diagonales alors que je ne les ai pas demandé
mon code pour la création des carrés est le suivant :
void evenementRPG::gestionMap(){
for(int y= 0;y <5; y++)
{
//cM.getm_Blocage().size(
for(int x=0;x<5;x++)
{
//cM.getm_Blocage()[y].size()
/*********** vetrex*************************/
//cM.getm_Blocage()[x].size()
//std::cout<<"carre n "<<as.intEnString(y* 5 + x)<< "***************" <<std::endl;
sf::Vertex* vArray2 = &m_vertices2[(y* 5 + x)*5];
vArray2[0].position = sf::Vector2f(x * tailleTiles ,y * tailleTiles );
//std::cout<<"x et a "<<as.intEnString(x * tailleTiles) <<" et y a "<< as.intEnString(y * tailleTiles)<<std::endl;
vArray2[1].position = sf::Vector2f((x+1) * tailleTiles, y * tailleTiles);
//std::cout<<"x et a "<<as.intEnString((x+1) * tailleTiles) <<" et y a "<< as.intEnString(y * tailleTiles)<<std::endl;
vArray2[2].position = sf::Vector2f((x+1) * tailleTiles , (y+1) * tailleTiles);
//std::cout<<"x et a "<<as.intEnString((x+1) * tailleTiles) <<" et y a "<< as.intEnString((y+1) * tailleTiles)<<std::endl;
vArray2[3].position = sf::Vector2f(x * tailleTiles, (y+1) * tailleTiles);
//std::cout<<"x et a "<<as.intEnString(x * tailleTiles) <<" et y a "<< as.intEnString((y+1)* tailleTiles)<<std::endl;
vArray2[4].position = sf::Vector2f(x * tailleTiles , y * tailleTiles);
//std::cout<<"x et a "<<as.intEnString(x * tailleTiles) <<" et y a "<< as.intEnString(y * tailleTiles)<<std::endl;
// on définit les quatre coordonnées de texture
for (int i=0; i<5 ;i++){
vArray2[i].color =sf::Color::Red;
}
}
}
}
et l'affichage :
void evenementRPG::draw(sf::RenderTarget& target, sf::RenderStates states) const
{
target.setView(view);
// on applique la transformation
//states.transform *= getTransform();
// on applique la texture du tileset
//states.texture = &texture;
// et on dessine enfin le tableau de vertex
//target.draw(m_vertices, states);
//states.texture = NULL;
target.draw(m_vertices2,states);
// target.draw(cP.getSprite_Perso());
}
Merci de votre aide, le rendu n'est pas important pour mon projet je veux juste essayer de comprendre.