Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[SFML 2.0] Nie ładuje tekstury do obiektu.

Ostatnio zmodyfikowano 2013-07-01 21:47
Autor Wiadomość
Rafi
Temat założony przez niniejszego użytkownika
[SFML 2.0] Nie ładuje tekstury do obiektu.
» 2013-07-01 17:51:55
Witam,

ucząc się tej biblioteki, napisałem prosty programik poruszający kwadratem. Tyle że ta tekstura nie chce się załadować (próbowałem już podawać pełną ścieżkę, zresztą obrazek znajduje się w tym samym folderze co plik exe).
Oto kod
C/C++
#include <SFML/Graphics.hpp>

int main()
{
    sf::RenderWindow oknoAplikacji( sf::VideoMode( 600, 600, 32 ), "Kurs SFML - http://cpp0x.pl" );
   
    sf::Sprite ksztalt;
    ksztalt.scale( 0.5, 0.5 );
    //ksztalt.setFillColor( sf::Color( 188, 0, 80 ) );
   
    sf::Texture tekstura;
    if( !tekstura.loadFromFile( "drewno.bmp" ) )
    {
        return - 1;
    }
   
   
    ksztalt.setTexture( tekstura );
   
    while( oknoAplikacji.isOpen() )
    {
        sf::Event zdarzenie;
        while( oknoAplikacji.pollEvent( zdarzenie ) )
        {
            if( zdarzenie.type == sf::Event::Closed )
                 oknoAplikacji.close();
           
            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::Escape )
                 oknoAplikacji.close();
           
            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::Up )
                 ksztalt.move( 0, - 50 );
           
            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::Down )
                 ksztalt.move( 0, 50 );
           
            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::Left )
                 ksztalt.move( - 50, 0 );
           
            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::Right )
                 ksztalt.move( 50, 0 );
           
            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::R )
                 ksztalt.setPosition( 300, 300 );
           
        }
        oknoAplikacji.clear( sf::Color::Black );
       
       
       
        oknoAplikacji.draw( ksztalt );
        oknoAplikacji.display();
    }
    return 0;
}

PS.
oczywiście biblioteka działa prawidłowo.
P-86742
pekfos
» 2013-07-01 17:52:47
A to na pewno drewno.bmp?
P-86744
Rafi
Temat założony przez niniejszego użytkownika
» 2013-07-01 20:35:55
Tak, zresztą testowałem też to na png.
P-86754
akwes
» 2013-07-01 20:43:56
Jak to nie chce się załadować?

Rozumiem, że program Ci tylko miga?
P-86756
Berux
» 2013-07-01 20:56:17
/edit:

Spróbuj odpalić program z folderu bin, nie z IDE (no chyba, że tak robisz), albo spróbuj wrzucić kopię tego samego obrazka również do folderu z projektem :)
P-86757
Rafi
Temat założony przez niniejszego użytkownika
» 2013-07-01 21:40:31
@Berux
Dzięki, odpalenie z pliku exe z folderu bin faktycznie pomogło :) Chociaż, ciekawy jestem, dlaczego nie mogę zrobić z IDE.
P-86765
Berux
» 2013-07-01 21:47:03
Ponieważ pliku graficznego nie masz w folderze z projektem, tylko z plikiem exe. Żeby zrobić tak, abyś mógł otwierać także przez IDE - umieść kopię tego samego pliku graficznego (nie skrót) w folderze z projektem.

Cieszę się, że pomogłem :)
P-86766
« 1 »
  Strona 1 z 1