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

[SFML] Klasa VertexArray

Ostatnio zmodyfikowano 2013-02-23 16:52
Autor Wiadomość
ridic14
Temat założony przez niniejszego użytkownika
[SFML] Klasa VertexArray
» 2013-02-23 10:41:32
Przez długi czas w SFML brakowało mi jakiejś klasy czy czegokolwiek co pozwoliłoby stworzyć własny kształt...

Po przepatrzeniu dokumentacji
Znalazłem klasę VertexArray i niby spełnia ona moje oczekiwania ale nie wiem czy można jej np. nadać teksturę albo kolor? Słyszałem że drugi argument funkcji draw może tu pomóc ale nie za bardzo wiem jak.

Poza tym nie da się ustalić pozycji dla całego kształtu ale ten problem rozwiązałem tworząc klasę z ustalaniem pozycji itp.
P-76765
DejaVu
» 2013-02-23 11:50:24
VertexArray służy do przekształcania wierzchołków. Zgodzę się również, że jest ona wybrakowana, zgłaszałem do niej poprawki do autora biblioteki, jednak uznał on, że 'on wie lepiej' i że 'tak jest dobrze'.

C/C++
class VertexArrayEx
    : public sf::VertexArray
    , public sf::Transformable
{
public:
    explicit VertexArrayEx( sf::PrimitiveType type, unsigned int vertexCount = 0 )
        : VertexArray( type, vertexCount )
        , Transformable()
    {
    }
   
    virtual void draw( sf::RenderTarget & target, sf::RenderStates states ) const
    {
        states.transform *= getTransform();
        states.texture = NULL;
        VertexArray::draw( target, states );
    }
};
Taka klasa by Ciebie zapewne uszczęśliwiła ale... metoda draw jest prywatna w oryginalnej implementacji SFML 2.0 przez co powyższy kod Ci się po prostu nie skompiluje.
P-76773
ridic14
Temat założony przez niniejszego użytkownika
» 2013-02-23 16:52:40
A gdybym zmienił w pliku VertexArray.hpp private na protected lub public i skompilował(cmake'iem) to mogłoby się udać?

//EDIT::DZIĘKI

Wygląda na to że działa :D. Teraz mogę normalnie pozycję ustalić chociaż :P
Jeszcze raz dzięki!
P-76802
« 1 »
  Strona 1 z 1