[SFML] Wyświetlanie wielku obiektów na ekranie
Ostatnio zmodyfikowano 2011-10-27 21:27
diego997 Temat założony przez niniejszego użytkownika |
[SFML] Wyświetlanie wielku obiektów na ekranie » 2011-10-27 17:32:08 Nie wiedziałem jak nazwać temat. Mam sobie tablice sf::Shape ksztalt[50] która przechowuje 50 elementów: sf::Shape::Rectangle(k+2,0,20,20,sf::Color::Blue); (k-jest powiększane o 10 co każdy element tablicy), w gruncie rzeczy jeżeli wyświetlę te 50 elementów w pętli to pojawi mi się pasek w postaci kostek 20 na 20. I teraz to ma być na ekranie cały czas, czy jest możliwość aby te 50 elementów tablicy jakoś przesłać tylko do jednej zmiennej? aby co każdy obrót głównej pętli ta odpowiedzialna za wyświetlanie wykonała się tylko raz a nie 50 razy ? |
|
SeaMonster131 |
» 2011-10-27 17:41:27 Hm... jeżeli chcesz wyświetlić 50 obiektów, no to chyba musisz w sumie 1x wyświetlić każdy obiekt więc 50 razy wyświetlić wszystkie obiekty. Albo możesz jakoś zrobić z nich jedną bitmapę i wtedy ja wyswietlic.. ;p Hm, innego sposobu nie widze :) Chyba że ktoś taki zna, to i ja chętnie skorzystam ;> |
|
DejaVu |
» 2011-10-27 19:42:55 |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-10-27 21:01:55 Właśnie też użyłem kontenera tylko skoro mam te 50 kostek to i tak je musze wyświetlać w pętli ;p |
|
DejaVu |
» 2011-10-27 21:04:10 Czyli otrzymałeś zadowalającą odpowiedź na swoje pytanie? :) |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-10-27 21:15:18 Zaraz może otrzymam :D
Czy jeżeli nawet bym za każdym razem wyświetlał 300 obiektów w petli to program nie powinien spowolnieć(przynajmniej niezauważalnie) ? |
|
DejaVu |
» 2011-10-27 21:22:48 Obiekty, które trzeba wyświetlić się renderuje. Część obiektów możesz olać tj. napisać if-a aby nie były renderowane jeżeli nie zmieszczą się na ekranie - to z kolei jest zazwyczaj wiadome na podstawie położenia obiektów i podpiętych pod nie sprajtów. |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-10-27 21:25:25 Dokładnie o to mi chodzi chce po prostu żeby te obiekty wyświetliły się tyko raz i już na zawsze były na scenie :D jak to zrobić ? Bo przecież tam jest funnkcja clear(); która wszystko czysci |
|
« 1 » 2 |