[SFML 2.0] Klasa dziedzicząca po sf::Sprite - błędy w wyświetlaniu
Ostatnio zmodyfikowano 2013-04-20 21:28
rafixxx25 Temat założony przez niniejszego użytkownika |
[SFML 2.0] Klasa dziedzicząca po sf::Sprite - błędy w wyświetlaniu » 2013-04-20 20:42:30 Witam! Oto mój kod(maksymalnie skrócony): main.cpp #include <SFML/Graphics.hpp> #include "obiekt.hpp" int main() { sf::RenderWindow oknoAplikacji( sf::VideoMode( 1280, 1024, 32 ), "Kurs SFML - http://cpp0x.pl" ); sf::Texture tekstura; tekstura.loadFromFile( "obrazek.png" ); sf::Sprite sprajt( tekstura ); Obiekt nowy( 800, 100, tekstura ); oknoAplikacji.clear( sf::Color::Black ); oknoAplikacji.draw( nowy ); oknoAplikacji.draw( sprajt ); oknoAplikacji.display(); return 0; }
obiekt.hpp #ifndef obiekt_hpp #define obiekt_hpp
class Obiekt : public sf::Sprite { public: Obiekt( float f_x, float f_y, sf::Texture tekstura ); }; #endif
obiekt.cpp #include <SFML/Graphics.hpp> #include "obiekt.hpp"
Obiekt::Obiekt( float f_x, float f_y, sf::Texture tekstura ) { this->setTexture( tekstura ); this->setPosition( f_x, f_y ); }
Problem jest taki, że gdy rysuję sf::Sprite to wszystko jest ok, ale gdy rysuję używając jako parametru obiektu klasy Obiekt, dziedziczącej po sf::Sprite, to rysowany jest on w dobrym miejscu, ale zamiast grafiki jest biały kwadrat. Wydaje mi się to dosyć dziwne - w końcu pozycja jest odczytywana prawidłowo, to dlaczego tekstura nie. Zapewne jest to jakiś oczywisty błąd dla osób zaznajomionych z obiektowością i dziedziczeniem, ja za dużego doświadczenia w tym jeszcze nie mam. Pozdrawiam. |
|
Monika90 |
» 2013-04-20 20:53:35 Ja się nie znam na takich dziwnych bibliotekach, ale spróbuj takiej implementacji konstruktora: Obiekt::Obiekt( float f_x, float f_y, sf::Texture tekstura ) : sf::Sprite( tekstura ) { this->setPosition( f_x, f_y ); }
|
|
rafixxx25 Temat założony przez niniejszego użytkownika |
» 2013-04-20 21:12:27 Niestety, problem nadal występuje. |
|
pekfos |
» 2013-04-20 21:12:53 Przekazuj obiekt sf::Texture przez referencje. |
|
rafixxx25 Temat założony przez niniejszego użytkownika |
» 2013-04-20 21:28:27 @pekfos, dzięki. Przeoczyłem tą kwestię - rzeczywiście pomogło ;)
|
|
« 1 » |