1 / 14

Projekat iz predmeta UVOD U PROGRAMIRANJE II

Projekat iz predmeta UVOD U PROGRAMIRANJE II. Igra Battle Office. Studenti: Bojan Kosanović 22/2005 Marko Apostolovič 28/2005. Jasmina Raković 31/2005 Miroslava Jeremić 49/2005 Anita Higl 224/2005. Uvod u Windows programiranje. Počinje i završava se sa Win32 API-jem

addison
Download Presentation

Projekat iz predmeta UVOD U PROGRAMIRANJE II

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Projekat iz predmeta UVOD U PROGRAMIRANJE II Igra Battle Office Studenti: Bojan Kosanović 22/2005 Marko Apostolovič 28/2005 Jasmina Raković 31/2005 Miroslava Jeremić 49/2005 Anita Higl 224/2005

  2. Uvod u Windows programiranje • Počinje i završava se sa Win32 API-jem • Windows programi su vođeni događajima • Windows je namerno konstruisan tako da nas drži podalje od uređaja • Programi se u određenoj meri oslanjaju na resurse • Ogroman broj tipova podataka koji se pišu velikim slovima • Preporučuje se upotreba mađarske notacije (int iCeoBroj) • WinMain( ) • #include <windows.h>

  3. Mehanizam igre • Sadrži zajedničke karakteristike više video-igara • Omogućava skrivanje delova koda koji je specifičan za Windows i koji nema ništa zajedničko sa samom video-igrom • Osnovni događaji koji se mogu smestiti u mehanizam: • Inicijalizacija • Pokretanje • Završetak • Aktiviranje • Deaktiviranje • Iscrtavanje • Ciklus

  4. Zaglavlje mehanizma igre BattleOffice sadrži: • Deklaraciju Windows funkcija WinMain( ) i WndProc() • Deklaraciju funkcija mehanizma igre koje su definisane u BattleOffice.cpp • Klasu mehanizma igre:

  5. GameEngine.cpp mora da uključi GameEngine.h

  6. Rad sa bitmapama • GDI (GraphicsDeviceInterface) za ostvarivanje komunikacije programa i fizičkih grafičkih uređaja • Boje se predstavljaju pomoću crvene, zelene i plave (RGB) COLORREF green = RGB(0, 255, 0); • Svako crtanje u Windowsu se obavlja u kontekstu uređaja. • Struktura bitmape: • Zaglavlje • Tabela boja • Podaci slike

  7. U Bitmap.h nalazi se struktura BITMAPINFO_256 u koju se zapisuje zaglavlje i tabela boja bitmape sa 256 boja. struct BITMAPINFO_256 { BITMAPINFOHEADER bmiHeader; RGBQUAD bmiColors[256]; };

  8. Klasa BITMAP

  9. Resource.h definiše jedinstvene identifikatore resursa bitmapa. • Identifikator resursa bitmape se koristi u resursnom skriptu BattleOffice.rc • Resursi se obuhvataju pomoću resursnog tipa BITMAP IDB_GUY1 BITMAP “Guy1.bmp”

  10. Kontrolisanje igre pomoću miša • Poruke miša koje se u Window programima koriste za obaveštavanje o događajima miša: WM_MOUSEMOVE-bilo koje kretanje miša WM_LBUTTONDOWN-pritisnut levi taster miša WM_LBUTTONUP-opušten levi taster miša WM_RBUTTONDOWN-pritisnut desni taster miša WM_RBUTTONUP-opušten desni taster miša WM_MBUTTONDOWN-pritisnut srednji taster miša WM_MBUTTONUP-opušten srednji taster miša

  11. Animiranje pomoću sprajtova • Svaki grafički objekat se zove sprajt i ima poziciju koja se tokom vremena menja. • Dodavanje dubine pomoću Z-uređenja • Otkrivanje sudara objekata • Koristimo klasu Sprite za prikazivanje jednog sprajta koji koristi klasu Bitmap za prikazivanje svoje slike. • U Sprite.h definisan je tip podataka BOUNDSACTION

  12. Klasa Sprite ima nekoliko konstruktora koji prihvataju različite količine informacija prilikom pravljenja sprajta. Klasa sadrži i tri opšta metoda koja su izuzetno važna: Update( )-ažuriranje Draw( )-crtanje sprajta IsPointInside( )-testiranje pogotka

  13. U izvornom kodu BattleOffice.cpp imamo: • Definiciju funkcija mehanizma igre kao što su: Inicijalizacija Startovanje Kraj igre Aktiviranje Deaktiviranje Iscrtavanje Ciklus Provera levog tastera miša Pomeranje miša

  14. Kod je napravio Majkl Morison

More Related