• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

C::B #SFML tylko 2 sprite!

Object Storage Arubacloud
0 głosów
301 wizyt
pytanie zadane 8 października 2016 w C i C++ przez Emil Panecki Bywalec (2,100 p.)

Dlaczego mogę dać tylko 2 sprite a potem nie?

Pracuje se w C::B i wszystko ok robię sobie grę do szkoły mam i nagle dodaje 3 sprite i niemożna !!!

#include <SFML/Graphics.hpp>
#include <windows.h>
#inlcude <iostream>


int main()
{
    sf::RenderWindow Win( sf::VideoMode( 640, 480, 32 ), "GalaXy" );

    Sleep(2500);



    sf::Texture tekstura;
    tekstura.loadFromFile( "Statek-X.png" );
    sf::Sprite obrazek;
    obrazek.setTexture( tekstura );


    sf::Texture tlo;
    tlo.loadFromFile( "Space-X.png" );
    sf::Sprite tlo2;
    tlo2.setTexture( tlo );

    sf::Texture Blok;
    Blok.loadFromFile( "Bloczek.png" );
    sf::Sprite Blok2;
    Blok2.setTexture( Blok );


obrazek.setPosition( 220, 350 );

    while( Win.isOpen() )
    {
        sf::Event zdarzenie;
        while( Win.pollEvent( zdarzenie ) )
        {

            if( zdarzenie.type == sf::Event::Closed )
                 Win.close();

            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::Escape )
                 Win.close();

            if( zdarzenie.type == sf::Event::MouseButtonPressed && zdarzenie.mouseButton.button == sf::Mouse::Middle )
                 Win.close();

            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::D )
               obrazek.move( 30,0 );

            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::A )
               obrazek.move( -30,0 );

            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::S )
               obrazek.move( 0,30 );

            if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::W )
               obrazek.move( 0,-30 );



        }
        obrazek.setScale( 0.3, 0.3 );
        Win.draw( obrazek, Blok, tlo2 );
        Win.display();
    }
    return 0;
}

takie info otrzymuje! ( zamiast informacji napisałem nazwa ponieważ nie chce by ktoś widział moje imię i nazwisko)

C:\Users\Nazwa\Documents\Galaxy\main.cpp||In function 'int main()':|
C:\Users\Nazwa\Documents\Galaxy\main.cpp|62|error: no matching function for call to 'sf::RenderWindow::draw(sf::Sprite&, sf::Texture&, sf::Sprite&)'|
C:\Users\Nazwa\Documents\Galaxy\main.cpp|62|note: candidates are:|
..\..\Desktop\SFML-2.3.2\include\SFML\Graphics\RenderTarget.hpp|236|note: void sf::RenderTarget::draw(const sf::Drawable&, const sf::RenderStates&)|
..\..\Desktop\SFML-2.3.2\include\SFML\Graphics\RenderTarget.hpp|236|note:   candidate expects 2 arguments, 3 provided|
..\..\Desktop\SFML-2.3.2\include\SFML\Graphics\RenderTarget.hpp|247|note: void sf::RenderTarget::draw(const sf::Vertex*, std::size_t, sf::PrimitiveType, const sf::RenderStates&)|
..\..\Desktop\SFML-2.3.2\include\SFML\Graphics\RenderTarget.hpp|247|note:   no known conversion for argument 1 from 'sf::Sprite' to 'const sf::Vertex*'|
||=== Build finished: 1 errors, 0 warnings (0 minutes, 1 seconds) ===|

 

komentarz 8 października 2016 przez criss Mędrzec (172,590 p.)

> ( zamiast informacji napisałem nazwa ponieważ nie chce by ktoś widział moje imię i nazwisko)
>Emil Panecki
>lost faith in humanity
>kill me plox
>schowac sie pod kocyk i juz nigdy z pod niego nie wychodzic

komentarz 8 października 2016 przez criss Mędrzec (172,590 p.)

Pracuje se w C::B i wszystko ok robię sobie grę do szkoły mam i nagle dodaje 3 sprite i niemożna !!!

 takie info otrzymuje! 

!!!!!!!!!!!!!!!!!!!!!!!!!!

PRZESTAN WSZYSTKO KOŃCZYĆ WYKRZYKNIKAMI !!!!!!!!!!!!!!!!!!!!!! I NAUCZ SIE PISAĆ ZROZUMIALE PO POLSKU !!!!!!!!!!!!!!!!!!!!!

!!! 

komentarz 8 października 2016 przez Emil Panecki Bywalec (2,100 p.)
Nie po prostu zrobiłem se tak dla zabawy z tym zamiast nazwy.
komentarz 8 października 2016 przez Emil Panecki Bywalec (2,100 p.)

"!" Najczęściej go używam w szkole by ktoś mnie zrozumiał DRĘ RYJA!!!!!! cheeky

1 odpowiedź

0 głosów
odpowiedź 8 października 2016 przez Dash Nałogowiec (29,650 p.)
wybrane 8 października 2016
 
Najlepsza

Window.draw() potrafi wyrenderować tylko jeden obrazek, jest funkcją która przyjmuje jeden argument, więc powinno być tak :

Win.clear(); 
Win.draw(obrazek); 
Win.draw(tlo2);
Win.draw(blok2); 
Win.display(); 

 

 

 

komentarz 8 października 2016 przez Emil Panecki Bywalec (2,100 p.)
Tak też niedziała bo tak też prubowałem....
komentarz 8 października 2016 przez Dash Nałogowiec (29,650 p.)
Ten sam error wyskakuje?
komentarz 8 października 2016 przez Emil Panecki Bywalec (2,100 p.)
trochę się zmienił.....

C:\Users\Nazwa\Documents\Galaxy\main.cpp||In function 'int main()':|
C:\Users\Nazwa\Documents\Galaxy\main.cpp|64|error: no matching function for call to 'sf::RenderWindow::draw(sf::Texture&)'|
C:\Users\Nazwa\Documents\Galaxy\main.cpp|64|note: candidates are:|
..\..\Desktop\SFML-2.3.2\include\SFML\Graphics\RenderTarget.hpp|236|note: void sf::RenderTarget::draw(const sf::Drawable&, const sf::RenderStates&)|
..\..\Desktop\SFML-2.3.2\include\SFML\Graphics\RenderTarget.hpp|236|note:   no known conversion for argument 1 from 'sf::Texture' to 'const sf::Drawable&'|
..\..\Desktop\SFML-2.3.2\include\SFML\Graphics\RenderTarget.hpp|247|note: void sf::RenderTarget::draw(const sf::Vertex*, std::size_t, sf::PrimitiveType, const sf::RenderStates&)|
..\..\Desktop\SFML-2.3.2\include\SFML\Graphics\RenderTarget.hpp|247|note:   candidate expects 4 arguments, 1 provided|
||=== Build finished: 1 errors, 0 warnings (0 minutes, 1 seconds) ===|
komentarz 8 października 2016 przez criss Mędrzec (172,590 p.)
... Próbujesz narysować teksture. Dlaczego nie zrobisz po prostu tego, co ci napisał Dash?
komentarz 8 października 2016 przez Emil Panecki Bywalec (2,100 p.)
Raczej jest lepiej bo mam 1 error zamiast całej litanii.
komentarz 8 października 2016 przez Emil Panecki Bywalec (2,100 p.)
Nareszcie zmieniłem trochę ten kod i działa!!!
komentarz 8 października 2016 przez Dash Nałogowiec (29,650 p.)
Niech zgadnę, próbowałeś zrobić Win.draw(blok) zamiast Win.draw(blok2) (bądź analogicznie z tłem, nie? Wyciągnij nauczkę na przyszłość i następnym razem nazywaj sobie czytelniej zmienne ;).
komentarz 12 października 2016 przez Emil Panecki Bywalec (2,100 p.)
Zgadłeś (a raczej spojrzałeś na kod).

Podobne pytania

0 głosów
1 odpowiedź 183 wizyt
pytanie zadane 3 października 2016 w C i C++ przez Emil Panecki Bywalec (2,100 p.)
–1 głos
1 odpowiedź 145 wizyt
+1 głos
2 odpowiedzi 129 wizyt
pytanie zadane 15 maja 2016 w C i C++ przez niezalogowany

92,579 zapytań

141,432 odpowiedzi

319,657 komentarzy

61,963 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...