XNA gra 2D

0

Witam, jestem na etapie tworzenia gry 2D przy użyciu frameworka XNA 4.0. Jak już wspomniałem mam w planie stworzenia prostej gry składającej sie z kilku etapów, polegającej na wykonywaniu prostych czynności typu przeciąganie odpowiednich Spriteow czy tez klikaniu ich. Do realizacji poszczególnych etapów zaimplementuje screen managera, poszczególny etap osobny screen. Tutaj pojawia się moje pytanie jak rozwiązać problem dotyczący zdarzenia kliknięcia poszczególnych obiektów(spriteów). Czy w każdej pętli Update sprawdzać czy pozycja mojego kursora (będącego myszką) zgadza się z pozycją obiektu, czy też istnieją inne metody umożliwiające odnalezienia zdarzenia najechania kursora na sprite.

0

Raczej nie ma nic takiego. Do sprawdzania czy mycha jest na spritcie musisz znać jego obszar, który zajmuje, powinien mieć swój rectangle. Klasa Rectangle ma metodę Contains(Point), która sprawdza czy punkt znajduje się w obiekcie. I tyle, musisz sprawdzać w każdym updacie czy któryś właśnie nie został kliknięty, ale nie myśl, że to jakoś spowolni grę, w żadnym wypadku, nie masz 1mld obiektów a najwyżej 1000, więc nie ma się o co martwić jak coś.

1

Tutaj pojawia się moje pytanie jak rozwiązać problem dotyczący zdarzenia kliknięcia poszczególnych obiektów(spriteów). Czy w każdej pętli Update sprawdzać czy pozycja mojego kursora (będącego myszką) zgadza się z pozycją obiektu

Nie w każdej pętli update tylko w reakcji na zdarzenie MouseClick. Ale ogólnie ofc tak (patrz: post xeo)

1 użytkowników online, w tym zalogowanych: 0, gości: 1