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

C++, definicja klasy sf::RenderWindow w funkcji zewnetrznej

Ostatnio zmodyfikowano 2025-11-15 19:27
Autor Wiadomość
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
??
P-183056
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...
P-183057
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.
P-183058
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ą?
P-183163
tBane
» 2025-10-17 16:47:22
Możesz użyć funkcji do odmierzania czasu

C/C++
sf::Clock mainClock;

sf::Time prevTime;
sf::Time currentTime;

while( window->isOpen() ) {
   
prevTime = currentTime;
   
currentTime = mainClock.getElapsedTime();
   
// ....
}
P-183164
czerwonymoskit
Temat założony przez niniejszego użytkownika
» 2025-10-18 21:25:34
To spowoduje wypisywanie kolejnych napisów z przerwą?
P-183173
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.
P-183183
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.
P-183352
« 1 » 2 3
  Strona 1 z 3 Następna strona