[SFML, C++] Czyszczenie okna
Ostatnio zmodyfikowano 2012-03-05 20:10
Strielokdzielny Temat założony przez niniejszego użytkownika |
» 2012-03-04 15:15:10 void CGameEngine::Run() { sf::Sprite naszSprajt; sf::Image Obrazek; Obrazek.LoadFromFile( "Robot.png" ); CAnimSet Animacja; Animacja.AnimFromImage( Obrazek, 64, 64 ); CActor Robot; std::cout << "Run(...) is started" << std::endl; while( m_render_window->IsOpened() ) { float ElapsedTime = Clock.GetElapsedTime(); sf::Event Event; while( m_render_window->GetEvent( Event ) ) { if( Event.Type == sf::Event::Closed ) { gDrawableRender.ReleaseList(); m_render_window->Close(); } if( Event.Type == sf::Event::KeyPressed && Event.Key.Code == sf::Key::S ) { isSpriteDrawn = true; Robot.SetAnim( & Animacja, true ); Robot.SetFrameTime( 0.125f ); Robot.SetPosition( 200, 200 ); gDrawableRender.Register( & Robot ); m_render_window->Clear(); } } sf::Image obrazek2; obrazek2.LoadFromFile( "logogry.png" ); sf::Sprite Sprajt; Sprajt.SetImage( obrazek2 ); Sprajt.SetPosition( 80, 0 ); m_render_window->Draw( Sprajt ); Update( ElapsedTime ); if( isSpriteDrawn ) m_render_window->Draw( naszSprajt ); Clock.Reset(); m_render_window->Display(); }
Mam taki kod. W środkowej sekcji mam kod dotyczący kliknięcia przycisku S, który ma startować grę. Gdy kliknę S to wyświetla mi postać i chodzi mi jeszcze, aby zrobić czyszczenie obrazku, żeby obrazek "logogry.png" schował się. |
|
pekfos |
» 2012-03-04 15:21:27 if( Event.Type == sf::Event::KeyPressed && Event.Key.Code == sf::Key::S ) { isSpriteDrawn = true; }
if( isSpriteDrawn ) m_render_window->Draw( naszSprajt ); Chyba za wcześnie na SFML.. Jak po 'S' ma zniknąć, to trzeba na false ustawić, no nie? |
|
Strielokdzielny Temat założony przez niniejszego użytkownika |
» 2012-03-04 15:23:19 To czemu jak jest true to mi wyświetla normalnie? |
|
pekfos |
» 2012-03-04 15:38:29 if( isSpriteDrawn ) m_render_window->Draw( naszSprajt ); Bo warunek jest? Kurs C++ |
|
fensz |
» 2012-03-04 16:15:29 Wydaje mi się że widzę tu kod SCIGame. Jeżeli się nie mylę, to w pliku CDrawableRender mógłbyś ustawić czyszczenie w pętli głównej |
|
akwes |
» 2012-03-04 16:25:21 @fensz, to nic nie da |
|
pekfos |
» 2012-03-04 16:30:13 Wydaje mi się że widzę tu kod SCIGame. Jeżeli się nie mylę, to w pliku CDrawableRender mógłbyś ustawić czyszczenie w pętli głównej |
Chyba się mylisz. Pętlę główną ma w kodzie, który pokazuje a w tej pętli jest czyszczenie. Poza tym to jw: To nic nie da. |
|
fensz |
» 2012-03-04 16:31:52 A nie można statycznie orzypisać czyszczenia> |
|
1 « 2 » 3 |