C++, definicja klasy sf::RenderWindow w funkcji zewnetrznej
Ostatnio zmodyfikowano 2025-11-15 19:27
czerwonymoskit Temat założony przez niniejszego użytkownika |
C++, definicja klasy sf::RenderWindow w funkcji zewnetrznej » 2025-09-28 12:11:47 Gdy w funkcji fixtures_.cpp, która podłączona jest zewnętrznie wstawiam linię
oknoAplikacji.draw( tekst1 );
pojawia mi się komunikat
E:\Manager\Projekt2\freakManager\fixtures_.cpp|12|error: 'oknoAplikacji' was not declared in this scope|
Gdzie powinienem wpisać w takim razie linię
sf::RenderWindow oknoAplikacji( sf::VideoMode( 1200, 900, 32 ), "freakManager" );
która teraz jest na początku funkcji main ?? |
|
czerwonymoskit Temat założony przez niniejszego użytkownika |
» 2025-09-28 12:40:32 Dobra ogarnąłem to. Kwestia standardowa jak w przypadku innych zmiennych czyli extern'y itd... |
|
pekfos |
» 2025-09-29 00:44:44 sf::RenderWindow nie powinno być zmienną globalną. Jeśli już musisz, miej wskaźnik na sf::RenderWindow jako zmienną globalną i zaalokuj dynamicznie obiekt w main. Zmienne globalne między różnymi plikami CPP nie powinny mieć między sobą zależności, bo będą tworzone w nieokreślonej kolejności. SFML wewnętrznie polega na zmiennych globalnych, więc wszystkie obiekty SFML które dotykają OpenGL (RenderWindow, Texture, etc) nie powinny być zmiennymi globalnymi. Inaczej ryzykujesz że program wywali się przy starcie lub wyłączaniu. |
|
czerwonymoskit Temat założony przez niniejszego użytkownika |
» 2025-10-17 16:41:30 Jeśli donkolejki poprzez funkcje draw dodam 20 napisów to funkcja display wyrysuje je wszystkie na raz. Jak zrobić by wypisywać je z jakąś pauzą? |
|
tBane |
» 2025-10-17 16:47:22 Możesz użyć funkcji do odmierzania czasu sf::Clock mainClock;
sf::Time prevTime; sf::Time currentTime;
while( window->isOpen() ) { prevTime = currentTime; currentTime = mainClock.getElapsedTime(); }
|
|
czerwonymoskit Temat założony przez niniejszego użytkownika |
» 2025-10-18 21:25:34 To spowoduje wypisywanie kolejnych napisów z przerwą? |
|
pekfos |
» 2025-10-19 22:37:35 Musisz sobie zaimplementować przerwę. Rysowanie na ekranie odbywa się wielokrotnie w ciągu każdej sekundy. Napisz logikę by właściwe teksty wyświetlały się we właściwych momentach i miejscach. Najlepiej w oparciu o upływ czasu rzeczywistego, z użyciem sf::Clock. |
|
czerwonymoskit Temat założony przez niniejszego użytkownika |
» 2025-11-02 09:47:26 Zrobiłem zwykłą pętlę ze zmienną globalną 'i', którą odmierzam do 2000. I bardzo ładnie wyświetla mi się z odstępami. Zauważyłem też dziwną rzecz, że jeśli użyje:
for (short j = 0 ; j < 21 ; j++) { jakasFunkcja(); }
To w jakasFunkcja zmienna lokalna 'j' jest nie widoczna. Trochę tego nie rozumiem bo przecież ona znajduje się w zasięgu, pomiędzy nawiasami. |
|
| « 1 » 2 3 |