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

[SFML] Biały prostokąt zamiast obrazka

Ostatnio zmodyfikowano 2011-06-03 21:09
Autor Wiadomość
ison
» 2011-06-03 14:56:59
@up jest tymczasowy i rzeczywiście ginie, ale przecież vector zawiera jego kopię
P-33798
mar3
Temat założony przez niniejszego użytkownika
» 2011-06-03 15:13:16
Właśnie jak pisałem grę w Allegro to tak robiłem, że dodawałem obiekt tymczasowy do vectora i działało.
P-33799
malan
» 2011-06-03 15:28:31
To jest SFML, a nie Allegro. W wersji 2.0 masz już wyraźnie napisane:
sf::Sprite Class Reference
It is important to note that the sf::Sprite instance doesn't copy the image that it uses, it only keeps a reference to it. Thus, a sf::Image must not be destructed while it is used by a sf::Sprite (i.e. never write a function that uses a local sf::Image instance for creating a sprite).

W wersji 1.6 jest zapewne podobnie.
P-33800
DejaVu
» 2011-06-03 15:35:14
http://cpp0x.pl/kursy/Kurs-SFML-C++ /Tworzenie-i-wyswietlanie-sprajtow/333

Co jest napisane w jedynej czerwonej ramce w powyższej lekcji? :)
P-33802
mar3
Temat założony przez niniejszego użytkownika
» 2011-06-03 17:37:43
Jest napisane:
Pamiętaj, że obraz musi być trzymany w pamięci tak długo jak długo chcemy go wyświetlać.
ale przecież vector zawiera jego kopię
P-33806
Elaine
» 2011-06-03 18:48:05
To, że obraz został skopiowany nie ma w tym przypadku większego znaczenia, ponieważ (skopiowany) Sprite trzyma wskaźnik na stary obraz, który w międzyczasie przestał istnieć.
P-33809
mar3
Temat założony przez niniejszego użytkownika
» 2011-06-03 19:51:43
poprawiona_gra_memory.rar - poprawiony projekt. Teraz widać obrazek. Czy ten kod jest dobry? Czy jeszcze coś poprawić np. zamiast obraz wysyłać przez referencje wysyłać prze wskaźnik?
P-33811
DejaVu
» 2011-06-03 21:09:00
To już jest w Twojej kwestii oceniać takie sprawy :)

/edit:
Temat jest rozwiązany, więc go zamykam. Zmieniłem też mu nazwę.
P-33813
1 « 2 »
Poprzednia strona Strona 2 z 2