Bienvenue, Invité. Merci de vous connecter ou de vous inscrire. Avez-vous oublié d'activer ?

Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - chiotdauchan

Pages: [1]
1
Fenêtrage / Re : Splash art transparent
« le: Juillet 17, 2013, 12:53:46 am »
Merci de ta réponse, tu veux dire des fonctions de l'API Windows?

2
Fenêtrage / Splash art transparent
« le: Juillet 16, 2013, 09:44:15 pm »
Bonjour,

j'aimerais réaliser un splash art transparent à la manière de photoshop (voir screenshot)



On voit qu'il y'a de la transparence permettant de voir le fond en dessous.
J'aimerais savoir s'il c'était possible de réaliser cela en SFML, j'ai essayé de le faire en appliquant un masque de transparence mais les zones sensées être transparente sont noires (surement à cause du window.clear() ).

Voici mon code:
#include <SFML/Graphics.hpp>
#include "SplashArt.hpp"

SplashArt::SplashArt(int largeur, int hauteur, int temps)
{
        this->hauteur = hauteur;
        this->largeur = largeur ;
        this->temps = temps;
}

int SplashArt::show()
{
    sf::RenderWindow splash(sf::VideoMode(largeur, hauteur), "Chargement", sf::Style::None);
    sf::Image image;
    sf::Texture texture;
    sf::Sprite sprite;
    image.loadFromFile("images/splashart2.png");
    image.createMaskFromColor(sf::Color(255,238,95),0);
    texture.loadFromImage(image);
    texture.setSmooth(false);
    sprite.setTexture(texture);

    sf::Font font_splash;
    if (!font_splash.loadFromFile("polices/Organic Fridays.ttf"))
        return EXIT_FAILURE;
    sf::Text text_splash("Chargement", font_splash, 50);
    while (splash.isOpen())
    {
        sf::Event event_splash;
        while (splash.pollEvent(event_splash))
        {
            if (event_splash.type == sf::Event::Closed)
                splash.close();
        }
        splash.clear();
        splash.draw(sprite);
        splash.draw(text_splash);
        splash.display();
        _sleep((temps*1000));
        splash.close();
    }
}

Pages: [1]
anything