Forum de la communauté SFML

Aide => Graphique => Discussion démarrée par: teamwar4 le Mai 12, 2012, 03:52:51 pm

Titre: [SFML 2.0] Transparence fond png
Posté par: teamwar4 le Mai 12, 2012, 03:52:51 pm
Bonjour,

Je suis entrain de coder un éditeur de map en 2D isométrique.

Mes tiles sont enregistrés au format png avec un fond rose, je place ensuite un masque de couleur.

Mais lorsque mes tiles se superposent, on voit apparaitre du noir.

Voici mon code:

sf::Image cellI;
sf::Texture cell;
sf::Sprite cellDisplay;

cellI.loadFromFile("tiles/bois.png");
cellI.createMaskFromColor(sf::Color(255,0,220),0);
cell.loadFromImage(cellI);
cell.setSmooth(false);
cellDisplay.setTexture(cell);
 

[attachment deleted by admin]
Titre: Re : [SFML 2.0] Transparence fond png
Posté par: Laurent le Mai 12, 2012, 03:57:07 pm
Serait-il possible de voir un code complet minimal qui reproduit le problème ?
Titre: Re : [SFML 2.0] Transparence fond png
Posté par: teamwar4 le Mai 12, 2012, 03:58:18 pm
voici ma boucle:

void Map::f_display()
{
    int mapX = 0;
    int mapY = 0;
    int posXD = m_cellX * 50 +150;
    int posX = posXD;
    int posYD = 150;
    int posY = posYD;


    while (mapX != m_cellX)
    {
        while (mapY != m_cellY)
        {
            CellDisplay *cell = new CellDisplay(Window::w_fAffichage, QPoint(posX, posY), QSize(100, 55));
            cell->show();
            mapY++;
            posX = posX+50;
            posY = posY+25;
        }
        if (mapY == m_cellY)
        {
            mapY = 0;
        }
        mapX++;
        posX = mapX * -50 + posXD;
        posY = mapX * 25 + posYD;
    }
}
Titre: Re : [SFML 2.0] Transparence fond png
Posté par: Laurent le Mai 12, 2012, 04:26:54 pm
Ok mais bon, ça c'est pas très intéressant ;)

Quand je parle de code complet minimal, c'est vraiment un code complet et minimal. Un main() qui contient juste ce qu'il faut pour reproduire ton problème, et que je puisse tester directement et facilement. Tout le reste de ton application, on s'en fiche ça n'a aucun rapport avec le problème :)
Titre: Re : [SFML 2.0] Transparence fond png
Posté par: teamwar4 le Mai 12, 2012, 04:32:58 pm
J'utilise Qt donc te donner ça dans un main(), je vois pas comment?
Titre: Re : [SFML 2.0] Transparence fond png
Posté par: Laurent le Mai 12, 2012, 06:00:23 pm
Sans Qt ? Tu as un problème d'affichage de sprite, donc Qt n'a rien à voir là-dedans.

Je ne veux pas ton application d'origine, juste un petit truc qui charge l'image, applique la transparence et l'affiche de manière à reproduire le même problème.