Elektroda.pl
Elektroda.pl
X

Wyszukiwarki naszych partnerów

Wyszukaj w ofercie 200 tys. produktów TME
Proszę, dodaj wyjątek elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[C] Prosta gra - jak to zrobić ?

doctors 21 Gru 2004 20:35 3157 9
  • #1 21 Gru 2004 20:35
    doctors
    Poziom 9  

    Witam mam poblem następującego rodzaju:chce napisac prosta gierkę i nie bardzo wiem jak sie do niej zabrac.Gra ma byc taka:w określonej ramce znajduje się ja(np kwadracik)którym steruje klawiaturą dookoła mnie latają (liczba ich zalezy od poziomu trudności) inne obiekty np gwiazdki ja musze przed nimi uciekac bo po zetknięciu z nimi przegrywam.W zwązku z tym jezeli ktos mógłby mi pomóc gdzie szukac informacji abym poradził sobie z tym proramem(jakiś agorytm, rozwiązania kolizji itp kurs programowania w c czy cos takiego).Może to jest proste i ktoś by nawet pokusił się o kod to bardzo proszę o pomoc w tej sprawie.
    Z góry dziękuje i pozdrawiam
    p.S.(nie wiem czy dobrze wybrałem ale uzce sie na kompilatorze dev c++ 4990 więc w ramach mozliwosci prosze o porady odnośnie tego kompilatora)

    Zamykam. - arnoldziq

  • Pomocny post
    #2 21 Gru 2004 22:28
    powerm
    Poziom 23  

    Sterowanie kwadrata to
    klawisz w lewo: while (leftarrow=true) KwadratXPos=KwadratXPos -1 klawisz w prawo: while (rightarrow=true) KwadratXPos=KwadratXPos +1.
    Odpowiednio tez gora i dol.
    X i Y nie moze byc wieksze niz i mniejsze niz obszar ekranu ktory bedzie sluzyl do grania. Wiec musisz ograniczyc powyzsze warunki do rozmiaru ekranu.
    Kolizja to porownanie wspolrzednych kwadratu z dana gwiazdka. Poniewaz kwadrat bedzie mial jednak jakies wymiary wiec i to musisz uwzglednic np Xgwiazdki > XKwadratuDolny i XGwiazdki < XKwadratuGorny to wtedy masz kolizje.
    Gwiazdki rozrzucasz na gornej linii randomem raz za np 20 odswiezen ekranu. Co odswiezenie ekranu przesuwasz gwiazdke przez dodanie do jej wspolrzednej Y
    Pozycje gwiazdek zapisywalbym w tablicy o tylu elementach ile bedzie moglo byc maksymalnie na ekranie (lepiej zrobic ja dynamiczna ale nie kazdy potrafi).
    Wszystko musisz odmalowac co ekran a ekrany sugerowalbym odswiezac na poczatku wolno a potem przyspieszac (mialbys w ten sposob levele) np po 10000 odswiezeniach zmniejszasz petle "postojowa"
    Tyle na szybko.

  • #3 21 Gru 2004 22:48
    h-doc
    Poziom 27  

    a ja dalej obstaję przy DirecX. Jak na razie wydaje mi się, że jest to najlepsze narzędzie do pisania gier (obsługa klawiatury, myszy, dźwięku i oczywiście grafiki). BTW, czy ktoś próbował używać DirectX pod devC++ ?

  • Pomocny post
    #5 23 Gru 2004 03:35
    MirekCz
    Poziom 35  

    tak, na warsztacie znajdziesz b.duzo. Pozatym szukaj po sieci, podobnych projektow co ty szukasz jest bardzo duzo.
    Jak przebrniesz przez podstawy (a moze juz teraz) to kup sobie jakas ksiazke do directx czy opengl (zalezy co cie interesuje) i zacznij z niej korzystac... ale to dopiero jak bedziesz dobry w programowaniu w C/C++ (nic nie piszesz na ile to umiesz, ale z postu wynika ze raczej slabo)

    Ogolnie to co chcesz zrobic nie jest do konca takie banalne (zalezy jeszcze jak daleko sie w tym posuniesz, bo podstawowa implementacja to moze dosyc mala, ale dodasz kilka bajerow i juz sie robi smok.

    Programowanie gier to kawal ciezkiej roboty i obejmuje ogromny zakres tematyczny. Jezeli jestes leniem to sobie to podaruj... jak masz zapal, checi i ogromne ilosci wolnego czasu to www.goole.com i jedziesz (jak znasz angielski to odwiedz serwis nehe.gamedev.net, www.gamedev.net , www.gamasutra.com , itd itd.. serwisow dobrych jest kilkanascie)

  • #6 23 Gru 2004 23:44
    MiL999
    Poziom 26  

    h-doc - ja probowalem polaczyc DevC++ z DirectX ale po kilku probach dalem za wygrana i przesiadlem sie na Visual C++. Moze jakos sie da to zrobic ale jeszcze nie slyszalem o tym.

  • #7 24 Gru 2004 13:23
    h-doc
    Poziom 27  

    MiL999 - no właśnie, DirectX z MSVC++ integruje się bardzo ładnie. Podejrzewałem, że z innymi kompilatorami nie będzie tak prosto. Chociaż z Buidelerem też nie powinno być problemów.

  • #9 24 Gru 2004 14:27
    MiL999
    Poziom 26  

    h-doc - VC++ i DirectX to produkty Microsoftu i dlatego nie ma problemow ze wspolpraca. Z tego co wiem to do Delphi (i pewnie do Builera) sa jakies specjalne biblioteki do pisania aplikacji wykorzystujących DirectX. Bardzo mozliwe ze rozne srodowiska wymagaja zmodyfikowanych bibliotek (lub cos w tym rodzaju). Ale nie jestem pewien w 100%.

  • #10 02 Sty 2005 22:39
    doctors
    Poziom 9  

    dziękuję wszystkim za porady napewno wiele z tego mi sie przyda i wykorzystam dużo spraw jeszcze raz dziękuję i pozdrawiam was wszystkich!!!!!!

 Szukaj w ofercie
Zamknij 
Wyszukaj w ofercie 200 tys. produktów TME