Szybkie rysowanie

Szybkie rysowanie
J8
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

Witam!
Od pewnego czasu uczę się Javy, w tym AWT i Swing'a. Chciałem napisać prostą grę platformową rysując po Canvasie, stosując podwójne buforowanie. Niestety, przy przerysowaniu całej planszy w pętli (plansza 1200x900 px) samo rysowanie tła zajmuje 200 milisekund. I tu moje pytanie: czy da się jakoś to przyśpieszyć? Czy można np. stosować potrójne buforowanie albo utworzyć osobnego, przeźroczystego Canvas'a na którym bym rysował tylko ruchome elementy, a tło nie byłoby przerysowywane? Czy może powinienem zacząć uczyć się obsługi jakiś innych bibliotek graficznych (zakładam, że te, których używam, nie były przeznaczone do tworzenie prostych gier)?
Z góry dziękuję za odpowiedź.

J8
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

Z tym, że chcę, żeby tło składało się z różnych obrazków 50x50 ułożonych obok siebie.

wojciechmaciejewski
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 560
0

i za każdym razem chcesz je w pętli odrysowywać? to jeżeli się nie zmieniają to narysuj je pod swoim Canvas i cześć

J8
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

A w jaki sposób ustawić przeźroczyste tło canvasa, na którym będę rysował ruchome obiekty? I jak ustalić, który canvas ma być "wyżej", a który "niżej"?

wojciechmaciejewski
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 560
0

Dobra, szczerze powiem że nie pamiętam czy Canvas ma możliwość ustawienia koloru z alfa. Jeżeli tak to użyj takiego co ma alfy 255 i będziesz miał przeźroczysty.

Jeżeli nie to użyj JPanel ze Swinga.

A żeby np. na Jpanel dodać następny komponent użyj funkcji add o ile mnie pamięć nie myli :)

J8
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

ok, dzięki

Kandif
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 231
0

Najlepiej tworzyć z prostą biblioteką jak np. Slick2D. Szybciej, wygodniej i efektywniej będzie trwało tworzenie gry z biblioteką wraz z nauczeniem się jej niż tworzenie gier np. w AWT ;/.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.