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

Auteur Sujet: [SFML 2.0] Transparence fond png  (Lu 4491 fois)

0 Membres et 1 Invité sur ce sujet

teamwar4

  • Newbie
  • *
  • Messages: 3
    • Voir le profil
[SFML 2.0] Transparence fond png
« 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]
« Modifié: Mai 12, 2012, 03:56:21 pm par teamwar4 »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : [SFML 2.0] Transparence fond png
« Réponse #1 le: Mai 12, 2012, 03:57:07 pm »
Serait-il possible de voir un code complet minimal qui reproduit le problème ?
Laurent Gomila - SFML developer

teamwar4

  • Newbie
  • *
  • Messages: 3
    • Voir le profil
Re : [SFML 2.0] Transparence fond png
« Réponse #2 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;
    }
}
« Modifié: Mai 12, 2012, 04:25:20 pm par Laurent »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : [SFML 2.0] Transparence fond png
« Réponse #3 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 :)
Laurent Gomila - SFML developer

teamwar4

  • Newbie
  • *
  • Messages: 3
    • Voir le profil
Re : [SFML 2.0] Transparence fond png
« Réponse #4 le: Mai 12, 2012, 04:32:58 pm »
J'utilise Qt donc te donner ça dans un main(), je vois pas comment?

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : [SFML 2.0] Transparence fond png
« Réponse #5 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.
Laurent Gomila - SFML developer

 

anything