Bonjour, je suis débutant sur Qt et j'ai fait le pari fou de me lancer dans un petit jeu en 2D...
Je rencontre ici un problème : lorsque que je tente de générer ma carte d'arrière plan dans une scène QGraphicsScene, la fenêtre s'ouvre, mais les images composant la map ne se chargent pas.
La map est formée par une liste de QVector3D, dont les deux premières coordonnées définiront les coordonnées d'un point de ma map, tandis que la troisième définira le type de matériau composant la map en ce point. L'image associé au matériau "0" est bien stockée dans "img/0.png", je peux le vérifier lorsque je n'en charge qu'une...
Voici un morceau du code, pendant la compilation, le debugger m'affiche : "QGraphicsScene::addItem: item has already been added to this scene"
Merci d'avance pour votre aide !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 //Display the map QGraphicsScene scene; view = new QGraphicsView(scene); QGraphicsPixmapItem tempGraphItem; QList<QVector3D> map = pG->getMap(); QPixmap tempPixmap; for(int i(0);i<map.length();i++) { tempPixmap.load("img/" + QString::number(map[i].z()) + ".png"); tempGraphItem.setPixmap(tempPixmap); tempGraphItem.setPos(map[i].x() * tempPixmap.width() , map[i].y() * tempPixmap.height()); scene->addItem(&tempGraphItem); } view->show();
Partager