Isometrisyys

Voit pyytää apua ohjelmointiongelmiin täältä.
Post Reply
Sepi
Member
Posts: 84
Joined: Thu Jun 05, 2008 1:38 pm

Isometrisyys

Post by Sepi » Tue Feb 17, 2009 4:37 pm

Elikkä voisiko joku valaista kuinka isometrinen peli käytännössä tehdään? Siis tiedän kyllä mitä on isometrisyys, en vain tiedä kuinka se käytännössä toimii :)

User avatar
Tuxu
Member
Posts: 81
Joined: Tue Oct 14, 2008 5:54 pm
Location: Jyväskylä
Contact:

Re: Isometrisyys

Post by Tuxu » Tue Feb 17, 2009 4:59 pm

aivot pohtii ja raksuttaa
TuxuGames | Projektiblogi

Sepi
Member
Posts: 84
Joined: Thu Jun 05, 2008 1:38 pm

Re: Isometrisyys

Post by Sepi » Tue Feb 17, 2009 5:54 pm

Kiitos. Pitääpä tutustua noihin.

User avatar
ristis
Moderator
Moderator
Posts: 101
Joined: Sat Sep 08, 2007 4:32 pm
Location: Espoo
Contact:

Re: Isometrisyys

Post by ristis » Sat Feb 21, 2009 5:41 pm

Isometrisyydessä ei ole mitään erikoista. Se ei vaadi oikeastaan mitään muuta kuin vähän matematiikkaa ja tietysti oikeanlaista grafiikkaa, mikä lienee usein syy näiden pelien vähyyteen.
Mitään muuta ei tarvitse oikeastaan huomioida. Pelimaailma voidaan yhä hahmottaa normaalisti kaksiulotteisena taulukkona mutta halutessaan isometrisyyshän mahdollistaa myös jonkunlaisen korkeuselementinkin.


Image
Ylläolevassa pelissä on pohjalla aivan normaali taulukko karttana. Samaten myös kartan sisällä olevien objektien sijainti on merkitty karttaan. Piirtovaiheessa karttapiirretään siten, että kuva-alueen vasemmasta yläreunasta alkaen piirretään pystyriveittäin karttasolujen sisältö ja näin kaikki piirtyvät oikein suorastaan automaagisesti. (eli mökki on puun takana ja se näyttää siltä kuten pitääkin) Ainoa vähän monimutkaisempi asia on se matematiikka jolla palat sijoitetaan kohdilleen. Tämäkään ei ole mikään vaikea juttu, kun asiaa pohtii hetken.

Voin laittaa jotain ihan oikeaakin esimerkkiä, jossa on ihan grafiikkaa ja koodia, jos on tarvetta.

User avatar
phons
Guru
Posts: 1056
Joined: Wed May 14, 2008 10:11 am

Re: Isometrisyys

Post by phons » Sat Feb 21, 2009 7:42 pm

Ihan vain uteliaisuudesta kysyn että miten tuo yllä olevassa kuvassa näkyvä projektisi sujuu? Se oli silloin joskus aika hieno.
Image

Sepi
Member
Posts: 84
Joined: Thu Jun 05, 2008 1:38 pm

Re: Isometrisyys

Post by Sepi » Sun Mar 15, 2009 9:51 pm

Jos millään viitsit ristis, niin voitko laittaa jonkunlaista esimerkkiä tulemaan? On meinaan jonninverran helpompi lähteä opettelemaan esimerkin kans :)

User avatar
ristis
Moderator
Moderator
Posts: 101
Joined: Sat Sep 08, 2007 4:32 pm
Location: Espoo
Contact:

Re: Isometrisyys

Post by ristis » Wed Mar 18, 2009 7:18 pm

Tässäpä pieni esimerkki. Latinkiin.


Se on melko puutteellinen mutta osoittaa periaatteen.
Liikkuminen joko nuolet tai wasd. Nuolet liikuttaa isometrisessä näkökulmassa pysty- ja vaakasuunnassa. Toisella tapaa taas sarakkeittain ja riveittäin. ( Ensin mainittu nyt bugittaa pikkusen. )

Johtuen sitten grafiikoista niin jos tilet haluaisi saumattomasti yhteen vaatisi se hivenen hienosäätöä. ( Hienosäädön tarpeen huomaa siten, että vaihtaa muuttujan tile_tyhja arvoksi 13) Ajattelin, että turhaan laitan sotkemaan siihen lisää lausekkeita.

Esimerkissä ei ole huomioitu, että jos kartta on niin iso, että sitä ei mahduta kerralla piirtämään. Tämä ei ole mikään ongelma kuitenkaan. Ainoa asia minkä se aiheuttaa on, että kartan koordinaatteja ei voida vertailla suoraan piirtokoordinaattien mukaan. (eli tx != karttax, toisin kuin nyt ne ovat sama asia)

Tässä on vaan esitelty portaittain liikkuminen. Liukuva liikkuminen aiheuttaakin vähän enemmän jo päänsärkyä. :)
Toivottavasti tästä on vähän apua.

EDIT:
Ai niin. Piirtolausekkeet on sitten myös sievennetty että niistä suoraan välttämättä avaudu se idea.
Salaisuushan on kuitenki siinä, että tilet piirretään lomittain. :)

Post Reply