Skocz do zawartości

Kwadrat ninja


Toster

Polecane posty

Oki doki wystartowal kolejny plan podboju wszechswiata. Pod roboczym tytulem "Kwadrat ninja". Docelowo ma byc cos jak gra: "Castlevania symphony of the night" (czy jakos tak). W ramach prac eksploatuje Blinda (jak sie zbytnio nie opiera) i udalo mi sie namowic Forca do jednej malej procki. Jesli ktos jest sklony uzyczyc swego mozgu i umiejetnosci prosze pisac, bede podrzucal mniejsze lub wieksze metody/klasy do napisania.

 

Pozdrawiam Toster

Always Dark<br />u1_tt_logo.png banner-1.pngexFabula-banner.pngson_banner_ubersmall.jpg

Link do komentarza
Udostępnij na innych stronach

Ok jakby sie ktos zdecydowal to lista taskow przy ktorych pomoc mile widziana:

1) klasa do obudowania ksztaltow podstawowych:

TShape, w ktorej znajduje sie tablica punktow (TPoint) okreslajaca ksztalt

TShRect - prostokat dziedziczacy po TShape (podanie narozy x1,y1 - x2,y2 lub drugi tryb podanie poczatku/konca lini (x1,y1-x2,y2) oraz grubosci)

TShArc

TShCircle

 

2) Wykonanie metody pracujacej na klasach TShape ktora potrafi stwierdzic kolizje miedzy ksztaltami na zasadzie analizy wektorow z ktorych sa zbudowane ksztalty

 

3) jak podlaczyc shadery do Omegi ? I dorobic do tego jakis sensowny interface w postaci klasy

 

4) render obiektow 3d do tekstury tak aby dalo sie to uzyc pozniej w omedze jako np tlo

 

Ochotnicy ?

Always Dark<br />u1_tt_logo.png banner-1.pngexFabula-banner.pngson_banner_ubersmall.jpg

Link do komentarza
Udostępnij na innych stronach

Hejka, odnosnie punktu nr jeden, juz mi cos Brainer podeslal. Ale odpowiadam na pytanie. Fiugury nie beda sie raczej obracac (narazie nie mam tego w planach/nie widze zastosowania) te klasy beda uzywane do wykrywania i obslugi kolizji.

Chociaz dodanie obrotu wzgledem punktu nie byloby chyba niczym trudnym ;)

Always Dark<br />u1_tt_logo.png banner-1.pngexFabula-banner.pngson_banner_ubersmall.jpg

Link do komentarza
Udostępnij na innych stronach

Dobrze, że Brainer chce robić kolizje, bo zrobić kolizje wielokąta to masakra

 

Zależy co oznaczymy jako zrobić ?

Obliczyć przecięcie ? Banalne

Wyliczyć optymalne punkty kontaktowe? Masakra

 

Radze trochę zmienić podejście i na samym początku stworzyć sobie wspólnie coś do matematyki wektorów 2d macierzy 2x2 podstawowe operacje na skalarach wtedy można brać sie za pisanie jakiegoś spójnego systemu. Wtedy bedzi emożna mysleć o obrotach i kolizjach. Jeśli chcecie to wam to DaThoX udostępni w formie dllki bądź normalnej, PhyLuma 2D w celach edukacyjnych tez możecie dostać :P

 

Powodzenia :D

www.spider.dathox.com :)

Link do komentarza
Udostępnij na innych stronach

spoko sie obaczy, narazie powoli bede to zbieral do kupy i stworze jakis grafik postepow pracy czy cos. No i chyba repozytorium kodu by sie przydalo... postaram sie cos na assembli zlozyc, no chyba ze jakis admin postawi na unice server cvs albo cos w ten gust i powie jak sie do tego podlaczyc :)

Always Dark<br />u1_tt_logo.png banner-1.pngexFabula-banner.pngson_banner_ubersmall.jpg

Link do komentarza
Udostępnij na innych stronach

spoko sie obaczy, narazie powoli bede to zbieral do kupy i stworze jakis grafik postepow pracy czy cos. No i chyba repozytorium kodu by sie przydalo... postaram sie cos na assembli zlozyc, no chyba ze jakis admin postawi na unice server cvs albo cos w ten gust i powie jak sie do tego podlaczyc :)

Dobry pomysł. :) Można by też założyć konto na SF.NET. Oni tam dają repozytoria CVS. ;)

Link do komentarza
Udostępnij na innych stronach

Ok, zalozylem projekt na assembla. Osoby ktore sie wstepnie zaangazowaly dostaly juz invita, i glownie do nich jest kierowany ten post. Osoby ktore chca sie przylaczyc nie widze problemu.

 

1) Od dawien dawna mam zmapowane projekty na jeden dysk gdyz ulatwia to przenoszenie i prace zespolowa. Wiec pierwszy krok to zrobienie sobie mapowania na dysk X: Jesli mamy jakis katalog gdzie normalnie trzymamy projekty np C:\Program files\Borland\Delphi7\Projects to polecenie ktorego uzyjemy bedzie takie:

subst X: "C:\Program files\Borland\Delphi7\Projects" j na dysku X, zakladamy katalog Ninja_2. Na tym katalogu bedziemy pracowac

 

2) zakladamy sobie konto na www.assembla.com i przylaczamy sie do projektu (akceptujemy invita ktorego wyslalem). Po zalogowaniu sie idziemy do "My start page" i tam powinno byc cos o nazwie "Kwadrat_ninja" po przejsciu tam jestesmy na stronie projektu, jest tam full roznych opcji ktore trza poznac bo jeszcze nie uzywalem tego na powaznie i nie znam sie na tym do konca ale...

 

3) idziemy teraz na strone http://tortoisesvn.net/downloads i instalujemy z tamtad klienta tortoisesvn, pozwoli on nam podlaczyc sie do systemu wersji tak wiec praca nad plikami bedzie zautomatyzowana

 

4) gdy mamy zainstalowanego tortoisesvn (po restarcie kompa) mozemy zaciagnac pliki. W tym celu wchodzimy na dysk X, klikamy prawym klawiszem na katalog Ninja_2 i z menu wybieramy "SVN Checkout". Pojawi sie nam okienko w ktorym wpisujemy 'URL of repository' na wartosc http://svn2.assembla.com/svn/Kwadrat_Ninja i dajemy ok. W efekcie powinnismy zaciagnac projekt z SVN'a na dysk. gotowy do pracy.

 

Wiecej info o pracy z tortoisesvn jeszcze nie posiadam gdyz nie uzywalem tego narzedzia do tej pory, ale bez stresu zachecam do lektury doca, na pewno sie przyda :)

 

Dodatkowe info

1) Kod jest pisany w D7 + pakiet Omega, jesli pracujecie nad formami prosze NIE UZYWAC Turbo Delphi ! Do wszelakich innych czesci kodu mozna uzywac czego dusza zapragnie lacznie z vi.

2) Prawdopodobnie beda problemy z mapowaniem dodatkowych sourcow takich jak pakiet omega, konflikty prosze rozwiazac u siebie lokalnie (ustawic odpowiednie mapowanie)

3) Osoby ktore nie uzywaly DUnita (na bazie w TD) proszone sa o sciagniecie i zainstalowanie takowego pakietu, bedziemy pisali unit testy ktore przyprwawia co niektorych o frustracje i mysli samobojcze jednakze szybko je docenicie. (http://xpro.com.au/)

4) prawdopodobnie jesli zajdzie taka potrzeba bedziemy generowac dokumentacje projektu za pomoca doxygena, ale narazie nie sadze aby bylo to potrzebne.

5) postaram sie wypelnic dzisiaj milestony i taski tak aby kazdy mogl sobie cos znalezc do zabawy

 

i to narazie tyle, troche na tyrana wyszedlem ale porzadek musi byc ;) Pytania opinie sugestie mile widziane.

 

PS. Force & Brainer, waszego kodu jeszcze nie ma na svn, postaram sie go dzisiaj zintegrowac z tym co mam i wrzucic ASAP

Always Dark<br />u1_tt_logo.png banner-1.pngexFabula-banner.pngson_banner_ubersmall.jpg

Link do komentarza
Udostępnij na innych stronach

Update, poszly zmiany. Dodalem klaske Brainera + zrobilem merga z kodem Forca.

Troche wiecej pobawilem sie z SVN,em. Jest mala zmiana do co obslugi :)

trzeba gdzies zalozyc sobie katalog o dowolnej nazwie (np svn_rep). I kliknac na nim po czym dac svn->Create repository here

a pozniej dopiero zaimportowac kod z svn'a jak opisalem powyzej. Jesli wszystko pojdzie ok to kolo katalogu ninja_2 pojawi sie zielony znaczek ze all jest ok. I wtedy jest pelen dostep do opcji update/comit itd. Jak bedziecie mieli z tym problem to lapcie mnie na gg (ale jutro) bo dzisiaj juz raczej znikam z sieci...

 

 

 

UPDATE:

Dodalem pierwszego milestona + kilka taskow, prosze sie deklarowac kto co chce robic...

Always Dark<br />u1_tt_logo.png banner-1.pngexFabula-banner.pngson_banner_ubersmall.jpg

Link do komentarza
Udostępnij na innych stronach

mam tutaj 2 grafikow ktorych namietnie mecze, troche grafy mam z poprzedniego projektu. o reszte bede gadal jeszcze z kilkoma znajomkami. Powoli zacznie sie to klarowac. Niebawem wrzuce na assemble packa z grafa ktora narazie mam.

Always Dark<br />u1_tt_logo.png banner-1.pngexFabula-banner.pngson_banner_ubersmall.jpg

Link do komentarza
Udostępnij na innych stronach

  • 4 months later...

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...