Skocz do zawartości

progio!

Użytkownicy
  • Postów

    84
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez progio!

  1. Możesz, kwestia po co - skoro chyba team masz :)
  2. E, raczej chodziło o łatwe przekazanie tego co jest do zrobienia, a nie żeby przyszpanować swoim poziomem :) No i gwoli ścisłości - doskonale wiemy jak to zrobić, kwestia sprawdzenia kandydata ;) @down Ej, nie używaj takich trudnych słów, bo pan @up jeszcze nie zrozumie.
  3. progio!

    [+16] Newfag /b/

    bunch of noobs, gays and no-penis
  4. progio!

    [+16] Newfag /b/

    erischan to żenada ;) ale jak Polacy piszą po polsku to ich nie lubisz, czy w ogóle. Chociaż fakt, że większość z nich to jakieś lamy, które chcą tylko cycka zobaczyć. /a/ rox
  5. progio!

    [+16] Newfag /b/

    lol /b/tardy są już nawet na tym forum oh noez
  6. A prawa autorskie wykupiłeś do tych grafik? Jak nie to dziękujemy ;) @Tibia Gra fajna zniszczona noobami, botterami, cwaniakami, pseudo-graczami, dzieciakami. Przykre.
  7. progio!

    Dev C++ a delphi

    Co? Dev? Tożto stare i nie wspierane od milionów lat. Co do GUI. Dla QT - QTCreator/QTDesigner, dla wxWidgets - wxDev-C++, albo Code::Blocks z wxSmith itd. itp. Pełno tego na necie. Chociaż polecam te dwie biblioteczki :P
  8. Też się zgadzam, nie musicie od razu wstawiać każdej "gry" [!], którą zrobicie na odwal, a do tego z przykładu... Wbrew temu co możecie myśleć -> nie czyni was to fajnym.
  9. Paletka może conajwyżej zrównać swoją pozycje na osi X do pozycji na osi X piłki, gdy jej samej X przekroczy X zielonej linii (ufff?). Tak, paletka może wtedy być pod piłką, ale najlepiej żeby pomału cofała do przewidywalnego miejsca "lądowania" piłki.
  10. Przede wszystkim paletka komputera powinna poruszać się za piłką. Obierz sobie jej środek, czy bok i niech za nią leci. Dalej, jeżeli piłka odbija się od ściany, to komputer oczywiście już wcześniej może to zauważyć. Łatwo też wyznaczyć przeciwny wektor ruchu piłki (wypadkowy można po prostu policzyć z dodawania wektoru piłki i wektoru ściany, a najlepiej uprościć to wyliczając wektor prostopadły...] . Jednakże liczenie tego jeszcze dużo przed kolizją ze ścianą i szybkie wykorzystanie do AI, nie będzie ani szybkie, ani dobre, bo komputer będzie miał od razu przewagę. Dlatego warto wyznaczyć odpowiednie progi odległości na osi X [najlepiej], ściany od piłki, i wtedy mając odpowiedni kąt, wycofać się paletą w kierunek przeciwny. Wkońcu przy dużych prędkościach, bez tego komp po prostu nie zdąży... To takie podstawy, możesz też potem oprócz taktyki defensywnej, obmyślić strategię ofensywną [walenie bokami pod ostrym kątem?]
  11. Tak, ponieważ zapis w pamięci s = "c" wygląda następująco: już nawet biorąc s jako zmienną [c][/0] Jest to tablica znaków jak widać :P
  12. Odwołaj się operatorem zakresu przy string do std...i robi :P
  13. W stringu jest tak samo. Operator indeksowania [] może nam zwrócić referencję do dowolnego znaku w ciągu... np. string s = "Tekst"; s[2] = 'c'; //edit: byl błąd, ma być pojedynczy cudzysłów ' std::cout << s; // wyświetli Tecst
  14. progio!

    Galeria Grafik

    Brakuje cieniowania ;X
  15. progio!

    Error przy kompilacji

    Na Linuksie samo by wywaliło "Press ENTER to continue". cin.get() powinien jednak dać radę na obu :P
  16. Miałem na myśli odpowiednią bibliotekę. Po prostu inicjujesz sobie tryb graficzny w swojej ulubionej bibliotece. Tekstury - no, tu raczej wiadomo. Warto załadować wcześniej wszystkie potrzebne pliki do pamięci. A update w pętli jest "bardzo", jeżeli chodzi o gry. Czemu? A no to proste. Np. możemy tam obliczyć nową pozycję naszej postaci, gdy wcześniej nią ruszymy. Po prostu manipulujemy wszystkimi zmiennymi, i jeżeli trzeba to coś wyliczamy nowego ;S Można to zawrzeć w funkcjach, wywoływanych w onEvent, ale po co? Ja jestem zwolennikiem czytelnego kodu ;S A na artykuł to brak czasu...
  17. Will, wiadomo że ów schemat jest tylko wieelkim ogólnikiem, i tak na prawdę trzeba go rozbudować do własnych potrzeb. Powiedz jednak, gdzie widzisz kilka błędów.
  18. progio!

    Clanlib 8.0

    Do kompilacji takich bibliotek potrzebujesz na Windowsie środowiska zgodnego ze standardem POSIX. Polecam Cygwina. Na necie znajdziesz na pewno manuala jak dokonać kompilacji.
  19. Robiąc grę, w SDLu, Allegro, OpenGLu - czymkolwiek musisz pamiętać o głównej pętli programu oraz 5 podstawowych funkcjach. Jest to przydatny schemat, nie zrobi gówna w twoim kodzie. Wygląda to mniej więcej tak: Oczywiście dodajemy takie bajery jak sprawdzanie poprawności inicjalizacji i tak dalej, ale to wiadomo. Teraz po krótce co robią te funkcję. Dodam też ang. nazwy których często się dla nich używa, sam cisne z tym schematem i jest klasa. Inicjalizacja (bool onInit()) => w tej funkcji, jak sama nazwa wskazuje, zajmujesz się initem. Inicjalizujesz środowisko graficzne, wczytujesz czcionki, mapy, tekstury dla bohaterów. Typ funkcji najlepiej bool - łatwo powiedzieć programowi, że coś się spierdzieliło i szybko zakończyć pokaz. <- PĘTLA GRY -> Obsluga zdarzeń (void onEvent()) => w tej funkcji z kolei, przyjmuje się wszystkie zdarzenia...Czyli co? Ano np. kliknięcia myszką, wciśnięcie klawiszy. Jeżeli wykonamy jakąś akcję można odpalić inną funkcję, która odpowiednio zareaguje (np. na wciśnięcie ESCAPE, ustawisz zmienną Gramy na 0, czyli false). Akcje petli (void onLoop()) => dziwnie to po polsku brzmi, ale całość jest prosta. W tej funkcji po prostu doliczamy wszelkie wartości. Np. chcesz zmienić klatkę postaci w każdej pętli, robisz ruch komputerem w kółko i krzyżyk - sprawdzasz, robisz to tutaj. Wyswietlanie (void onRender()) => tutaj po prostu wyświetlasz na ekranik, wszystko to co ma się wyświetlić. Ta funkcja jest na końcu, wkońcu wcześniej musisz sprawdzić, czy nikt się nie bawił klawiaturką i nie ruszył się twoim bohaterem ;) Oczywiście double buffering obowiązkowy :P <- KONIEC PĘTLI GRY -> Sprzątanie (void onCleanUp()) => w tej ostatniej funkcji usuwasz wszelkie stworzone dynamicznie obiekty, powierzchnie graficzne, usuwasz z pamięci bzdety, a na samym końcu wyłączasz swoją graficzkę ;) Dodatkowo polecam zrobić klasę główną na grę. Wtedy zamiast tych funkcji w main, dasz je w swojej klasie (a w main oddasz kontrolę nad programem dla niej). Będziesz miał wszystko w jednym miejscu. Do tego robisz klasę dla tzw. Entity (NPC, ruszających się bajerów, albo przedmiotów na mapię mających jakąś własność - np. kolce w Mario), a także klasę Player/Gracz, która po Entity dziedziczy. Wiadomo, że im ładniej sobie to podzielisz, tym łatwiej będzie się w kodzie poruszać. Taką właśnie metodą zrobiłem nawet to kółko i krzyżyk w SDLu ;)
  20. Najpierw naucz się jakichkolwiek bibliotek do robienia gier, najlepiej 2D na początek (wymieniane już Allegro czy SDL). Z małą wiedzą i gotowym silnikiem nic nie zdziałasz ;S
  21. Bez wersji Pro nic nie zdziałasz. BTW, THIS GAMEMAKER SUCKS BIG TIME FOR FUCKS SAKE STOP USING IT BITCHES ZOMFG U SUX SO HARDLY
  22. progio!

    Wasze pulpity

    Trochę ikonek przysłoniętych przez foobara... http://img389.imageshack.us/img389/5297/beztytuump8.jpg
  23. Poxipol nie ładnie ripować ;x poxipol (grzybol_95@tlen.pl) yourself 16:25:52 spadaj
  24. Z kodu wnioskuje, że pewnikiem pozycja playera jest zmienną globalną? Ogólnie przydałaby się klasa dla gracza ;S
×
×
  • Dodaj nową pozycję...