PDA

Prikaži potpunu verziju : [Demo] Medieval Slaughter Game


Andross
3.5.2013, 3:40
U poslednje vreme sam uhvatio da se zafrkavam sa raycastingom - tehnikom za prikazivanje 3D prostora na osnovu 2D mape. Vecina kultnih pucacina iz 90ih je koristila ovu tehniku - Wolfenstein 3D, Blake Stone 3D, Doom, Heretic, HeXen, Strife, Witchaven, Duke Nukem 3D i drugi. Ono sto se moze reci jeste da su sve te igre imale specifican gameplay i atmosferu koje danasnje igre retko ubadaju, pa cak i portovi kao ZDoom i Doomsday ne ubadaju bas u centar.

Tako se ja odlucih na ovo, za sada je sve u tech demo fazi posto mi je bio fokus da napravim funkcionalan raycaster za pocetak. Tehnologija je na nivou Wolfenstein/Blake Stone engine-a: svi zidovi su ortogonalni blokovi iste velicine, nema gledanja gore dole, skakanja i ostalih kerefeki. Poprilicno jednostavna i ogranicena tehnologija ali sasvim dovoljna za pocetak.

Trenutno radi render sveta i staticnih sprajtova, kretanje i kolizija.
Planiram da doteram koliziju, uradim vrata/prekidace, osvetljenje, dinamicke sprajtove i prebacim deo ili ceo render na shadere radi performansi (doduse treba da proucim kako bi to radilo, nisam neki majstor za shadere). Elem ispod je download link pa javljajte jel radi i kako radi. Kako budem odmicao tako cu postavljati apdejtove.

Cheers.

Link: Medieval Slaughter Game (https://mega.co.nz/#!3sRSkYBT)
Kljuc: GT3YkUgTK0WAgNsMeNjZGDU5HWFBO6aosAcZR2LIwS4

Kontrole: Strelice za kretanje, zarez i tacka strafe.

UtiEeQGR89I

MG-RAY
3.5.2013, 7:58
Izgleda Doom-oliko (to je kompliment :D)

Probao igru, sve radi sasvim OK, samo:

- Možda bi trebao da proširiš collision boxove/margine oko zidova, pošto možeš previše da im priđeš do nivoa da vidiš individuelne pixle na teksturi.

Kudos. :)

Andross
3.5.2013, 17:08
Yup koliziju treba da sredim definitivno.
Nasao sam bag, kada se ode gornji levi cosak mape (u odnosu na igracevu pocetnu orijentaciju, u map fajlu to bi bio donje desni ugao, pored sobe sa gargojlima) pa kad se gleda niz hodnik baca segmentation fault. Na trenutnoj rezolucija/tekstura kombinacija se retko desava, ali na 1024x768 i 512 tex puca stalno. Bag je do crtanja poda/plafona, distanca kod prvog pixela ispod najdaljeg zida ne valja ili nesto, a GDB nije sposoban da pokaze koja linija prouzrokuje seg fault -.-

Inace evo par shoot-ova na Eni-jev predlog - 1024x768 rezolucija, teksture 512x512, min FPS 72. Lepo izgleda, doduse ja sam navikao na onu "prljavost" :D (+ bi ovo bilo mnogo jeftinije da se radi poligonima, which kinda defeats the purpose)

http://i43.tinypic.com/30t5ete.jpg

http://i43.tinypic.com/2zisuq0.jpg

http://i42.tinypic.com/314qkie.jpg

Belphegor
3.5.2013, 20:54
Probao sam i radi. Vidim da je zakucano na 60fps.
Neki poseban razlog za ovaj "retro" stil i extravangantni nacin crtanja za ovo doba?

Nisam mnogo istrazivao tako da mi nije pucalo. Stavi koji assert gde indexiras nizove pa posle koji breakpoint i voila bug resolved. :D

assert( index < size && index >= 0 && "OVDE PUCA!" );

Andross
6.5.2013, 2:00
Mali apdejt: povecao sam malo kolizionu distancu sa zidovima pa se ne vide onolki pikseli, uradio bolju koliziju sa sprajtovima pa se igrac ne zakuca na ivicu bureta vec sklizne i dodao EXP2 fog efekat.

A_1_d4JG8fM

Andross
27.9.2013, 1:38
Posle mega duge pauze opet sam se latio vremena da radim na ovom cudu :)
Ovog puta sam odlucio predjem na "napredniji" render i map sistem poput onoga u doom-u. Za sada sam uradio primitivni render jednog sektora - ivice prikazane u pravilnom redosledu "depth wise" + tekstura. Treba jos da se pozabavim sa mapiranjem tekstura ali je u principu dobro za sada.

SCN0XtkKGXo

Andross
18.10.2013, 2:23
Odradih render poda i plafona, vertikalno kretanje i vertikalno gledanje :)
Sada se bacam na rendering razlicitih sektora.

HFgl5UsVFAs

Markonije
21.10.2013, 17:38
Ne bih da ispadnem obeshrabrivach,ali bojim se da cackas road kill stapom u nadi da ces ga oziveti.

Taj zanr se fosilizovao (beyond death).


E sad jedino ima smisla napraviti neku brzu skupljalicu ili vremenski ogranicen serious sam/pain killer shooter,potencirati na rekordima i njihovom obaranju i sve to izbaciti na Android platformi sa dobrim touch screen responsom.

To bi pilo vodu,ili neki rail game ala Temple Run...ili nesto po motivima filma CUBE neki 'trap game' (sad vec odajem dobre ideje :))


Jer nema leba od story driven-a u tom zanru jos od 1995 pa na ovamo...

Maksimalno iskrena kritika iz najbolje moguce namere!

(ne mora biti da sam u pravu,ali kazem kako bih ja, kad bi pravio nesto slicno,i zbog cega tako mislim)


I na kraju svaka cast za volju i trud.

Andross
26.11.2013, 23:59
U neku ruku i jesi u pravu, ali ovo pravim radi vezbe i sebi za dusu, kao sto neko fura nabudzenu "kockicu" a moze noviju seriju 3 :)

Elem, jezgro renderera je gotovo pa engine sada moze da prikazuje vise sektora u odnosu na samo jedan. Sada se bacam na tranziciju izmedju sektora i koliziju pa ce da padne playable "walkthrough" demo.

http://oi40.tinypic.com/2qdy58l.jpg

http://oi39.tinypic.com/v6q645.jpg

http://oi41.tinypic.com/28bqhco.jpg

Andross
17.12.2013, 20:35
Sklepah demo konacno, kontrole su klasika WASD + mis, skok na space. Javite jel drzi 60 FPS-a i jel ima nekih bagova u koliziji i jel sve radi kako valja :)

Download Kvlt (https://mega.co.nz/#!FUA2GD6A!L5QP-1rXoMeK5XoFsM26M0gVgU45WZG9gf3wHZbAvkg)

xBS1O-QQoUA

Belphegor
17.12.2013, 21:04
Kolizija radi dobro, fps varira 30-40, 60 je samo kad gledam u zid a da nema iza geometrije. Konfa iz profila.

Andross
25.5.2014, 19:02
Radim na ovome i dalje, doduse slabo hvatam slobodno vreme za rad al' sta da se radi. Prebacio sam se na OpenGL 3, s'obzirom da optimizacija softverskog renderinga zahteva poznavanje assemblera i SSE instrukcija, a i Ken Silverman kreator Build Enginea (Duke Nukem 3D) je bio dovoljno ljubazan da mi objasni da je bolje raditi softversku rasterizaciju nego raycasting, tako da je OGL bio jasan izbor.

Elem u ovoj iteraciji sam se odlucio da krenem iz kontra smera - prvo da uradim rendering objekata, koliziju, jednostavan AI i borbu pa tek onda da se bacim na geometriju sveta. Trenutno je taj osnovni deo uradjen, treba da se u kodu malo dotera i sredi ali vrsi svoj posao. Placeholder grafiku i zvuk cupam iz Heretica i Hexena tako da se ovo guram do kraja definitivno. No excuses.

YUc3fy_SbAw