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

Śmieci w SFML

VPS Starter Arubacloud
+1 głos
174 wizyt
pytanie zadane 20 czerwca 2016 w C i C++ przez C☺ndzi Stary wyjadacz (12,100 p.)

Hej,
nurtuje mnie problem z SFML, a mianowicie - przed użyciem okna i jakiejś figury i pojawieniem się ich jest okej - zużycie ramu kilka dziesiątych megabajta - po użyciu skacze do ok. 15, a po USUNIĘCIU (delete) wszystkich "sfmlowskich" obiektów spada "tylko" do 13mb. Dlaczego tak się dzieje? Czy da się temu zaradzić? Mam nieodparte wrażenie, że ktoś mi już kiedyś odpowiadał na to pytanie...

1 odpowiedź

0 głosów
odpowiedź 20 czerwca 2016 przez Dash Nałogowiec (29,650 p.)
15 mb? Jesteś pewien że np. dynamicznego tworzenia obiektów nie umieściłeś w pętli? Wtedy za każdym razem na wskaźniku tworzyłaby się nowa figura, a stara zostawała i zaśmiecała ram.
komentarz 20 czerwca 2016 przez C☺ndzi Stary wyjadacz (12,100 p.)
#include <SFML\Graphics.hpp>

int main()
{
	sf::RenderWindow window(sf::VideoMode(800, 600), "test");
	sf::Event event;

	while (window.isOpen())
	{
		while (window.pollEvent(event))
		{
			if (event.type == sf::Event::Closed)
			{
				window.close();
			}

			window.clear();
			window.display();
		}
	}
}

Powyższy kod zużywa u mnie masę pamięci:

http://i.imgur.com/0jQYjhL.png

Więc to chyba wina SFML.

@edit

Ograniczene fpsów pozwoliło na zmniejszenie użycia do ok. 15mb, a ponowna kompilacja (bez zablokowanych fpsów) ok. 16mb. Dziwne.

komentarz 20 czerwca 2016 przez Dash Nałogowiec (29,650 p.)
Brak ograniczenia fpsów powinien wpływać raczej na pracę procesora i grafiki, one odpowiadają za renderowani galopujących fpsów. Spróbuj zamiast całego graphics.hpp ładować poszczególne moduły. Chociaż w sumie może zwyczajnie ta biblioteka tyle ramu pożera, ja nie widzę nic w kodzie ciekawego.

Podobne pytania

+1 głos
1 odpowiedź 2,213 wizyt
+1 głos
1 odpowiedź 345 wizyt
0 głosów
2 odpowiedzi 257 wizyt
pytanie zadane 27 marca 2016 w Offtop przez jegor377 Stary wyjadacz (13,230 p.)

92,770 zapytań

141,695 odpowiedzi

320,518 komentarzy

62,107 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

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!

...