SFML Problem - Sprite wird nicht geladen



  • Hallo an Alle

    Ich habe ein Problem beim Laden und/oder Anzeigen von
    Sprites mit der SFML. Wenn ich debugge dann wird Bild
    und Bild2 angezeigt, aber Bild3 und 4 nicht
    Hoffe es ist nicht so ein logischer Anfänger Fehler oder so...

    #include <SFML\System.hpp>
    #include <SFML\Graphics.hpp>
    #include <SFML\Window.hpp>
    #include <SFML\Audio.hpp>
    #include <iostream>
    #include <Windows.h>
    
    int main()
    {
    	HWND hWnd = GetConsoleWindow();
        ShowWindow( hWnd, SW_HIDE );
    
    	sf::Image Bild;
    	Bild.LoadFromFile ("IMG1.png");
    
    	sf::Image Bild2;
    	Bild2.LoadFromFile ("IMG2.jpg");
    
    	sf::Image Bild3;
    	Bild3.LoadFromFile ("IMG3.jgp");
    
    	sf::Image Bild4;
    	Bild4.LoadFromFile ("IMG4.jgp");
    
    	sf::RenderWindow App(sf::VideoMode(1366, 768, 32), "SFML Graphics");
    
    	sf::Sprite Sprite(Bild); 
    	Sprite.SetColor(sf::Color(255,255,255,128));
    	Sprite.SetPosition(0.f, 0.f);
        Sprite.SetScale(1.f, 1.f);
    
    	sf::Sprite Sprite2(Bild2); 
    	Sprite2.SetColor(sf::Color(255,255,255,128));
    	Sprite2.SetPosition(0.f, 0.f);
        Sprite2.SetScale(1.f, 1.f);
    
    	sf::Sprite Sprite3(Bild3); 
    	Sprite3.SetColor(sf::Color(255,255,255,128));
    	Sprite3.SetPosition(0.f, 0.f);
        Sprite3.SetScale(1.f, 1.f);
    
    	sf::Sprite Sprite4(Bild4); 
    	Sprite4.SetColor(sf::Color(255,255,255,128));
    	Sprite4.SetPosition(0.f, 0.f);
        Sprite4.SetScale(1.f, 1.f);
    
        while (App.IsOpened())
        {
    
            sf::Event Event;
            while (App.GetEvent(Event))
    
                if (Event.Type == sf::Event::Closed)
                    App.Close();
    
            float ElapsedTime = App.GetFrameTime();
    
    		if (App.GetInput().IsKeyDown(sf::Key::Num1))
    		{
    
    			App.Clear();
    			App.Draw(Sprite);
    
    		}
            if (App.GetInput().IsKeyDown(sf::Key::Num2))
    		{
    			App.Clear();
    			App.Draw(Sprite2);
    
    		}
            if (App.GetInput().IsKeyDown(sf::Key::Num3)) 
    		{
    
    			App.Clear();
    			App.Draw(Sprite3);
    
    		}
            if (App.GetInput().IsKeyDown(sf::Key::Num4))
    		{
    			App.Clear();
    			App.Draw(Sprite4);
    
    		}
    
    		App.Display();
    	}
    
    		return 0;
    }
    


  • Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C++ (auch C++0x und C++11) in das Forum Spiele-/Grafikprogrammierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • crashjosh schrieb:

    sf::Image Bild3;
    	Bild3.LoadFromFile ("IMG3.jgp");
    
    	sf::Image Bild4;
    	Bild4.LoadFromFile ("IMG4.jgp");
    

    Haben die Bilder wirklich die Endung "jgp"?



  • Ah Danke ^^ du hast mich auf die Idee gebracht dochmal
    .PNG zu benutzen ...Klappt! (Oder vielleicht lag es auch an der Formatierung)



  • TyRoXx meinte wohl eher, ob die Endung wirklich "jgp" ist, denn im Normalfall heißt es "jpg", was also nach einem Schreibfehler bei dir aussah 😉


Anmelden zum Antworten