Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Spilldesign
- Trinn 2: Behandle knapper
- Trinn 3: Klasser hierarki
- Trinn 4: Oppdatering av skjermen
- Trinn 5: Spilllogikk
- Trinn 6: Et påskeegg
Video: LCD Invaders: a Space Invaders Like Game on 16x2 LCD Character Display: 7 Steps
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
Det er ikke nødvendig å introdusere et legendarisk "Space Invaders" -spill. Den mest interessante egenskapen til dette prosjektet er at den bruker tekstvisning for grafisk utgang. Det oppnås ved å implementere 8 egendefinerte tegn.
Du kan laste ned hele Arduino -skissen her:
github.com/arduinocelentano/LCD_invaders/
Rekvisita
Arduino UNO -styre
LCD -tastaturskjerm
USB -kabel for skisseopplasting
Trinn 1: Spilldesign
Skjermen tillater ikke å kontrollere separate piksler og inneholder bare to tekstlinjer som ikke er nok for spill. Men det lar deg implementere opptil 8 egendefinerte tegn. Trikset er å behandle hvert 5x8 piksler tegn som to 5x4 piksler spillceller. Det vil si at vi vil ha 16x4 spillfelt, noe som er fornuftig. 8 tegn er akkurat nok til å implementere sprites for spillerens romskip, kuler og animerte romvesener. Siden sprites er 5x4 og tegnene er 5x8, trenger vi noen tegn med to sprites som "et romskip og en kule" sprite, "en alien og en bullet sprite" etc. Alle de egendefinerte tegnene vises på bildet.
Trinn 2: Behandle knapper
Vanligvis er alle knappene på et LCD -skjerm koblet til den samme analoge pinnen. Det er forskjellige versjoner av LCD -skjold, så du må sannsynligvis endre heltall i min knapp for behandling av knapper.
Trinn 3: Klasser hierarki
Jeg har implementert en basisklasse GameObject som har koordinater og hastighetsfelt og behandler kollisjoner. Klasser Ship, Alien og Bullet arves fra den.
Trinn 4: Oppdatering av skjermen
Gjengivelseslogikk kan se litt komplisert ut fordi vi må forvandle 16x4 spilllogikk til 16x2 -skjerm. Vennligst les kommentarene i koden for ytterligere referanse. For å unngå flimring brukte jeg en todimensjonal char -matrise som tekstbuffer. Den lar deg bruke et par (en for hver linje) utskriftsoperasjoner for å oppdatere skjermen.
Trinn 5: Spilllogikk
Her er hjertet i spillet. Hovedløkken endrer koordinater for alle objektene, kontrollerer alle slags kollisjoner og knappetrykkhendelser. Utlendingers hastighet og skyte sannsynlighet øker fra nivå til nivå. Men poengsummen belønningen øker også.
Trinn 6: Et påskeegg
Det er ikke noe nivå etter nivå 42. Seriøst. Det er det ultimate livsnivået, universet og alt.:)
Anbefalt:
Lego bærbar spillkonsoll med Space Invaders: 4 trinn
Lego bærbar spillkonsoll med Space Invaders: Har du noen gang tenkt på å være en spillutvikler og bygge din egen spillkonsoll som du kan spille på farten? Alt du trenger er litt tid, maskinvare Lego bricksa Mini-Calliope (kan bestilles på dette nettstedet https://calliope.cc/en) og litt dyktighet
Space Invaders i Micropython på Micro: bit: 5 trinn
Space Invaders in Micropython on Micro: bit: I våre tidligere artikler har vi utforsket spillfremstilling på GameGo, en bærbar retro spillkonsoll utviklet av TinkerGen education. Spillene vi lagde minner om gamle Nintendo -spill. I dagens artikkel skal vi ta et skritt tilbake, for å
Hvordan lage Space Invaders på mikrobit. 4 trinn
Hvordan lage Space Invaders på mikrobit .: Så det første trinnet er å lage skipet vårt. Du går til " Grunnleggende " og legg til en "Ved start" blokkere. Deretter går du til " Variabler " og du oppretter en variabel som heter " SHIP " og velg en blokk fra " Variabler " fane t
Space Invaders Clock (on a Budget!): 6 trinn (med bilder)
Space Invaders Clock (on a Budget!): Nylig så jeg et kult bygg av GeckoDiode, og jeg ville umiddelbart bygge det selv. The Instructable is Space Invaders Desktop Clock, og jeg anbefaler at du tar en titt på den etter å ha lest dette. Prosjektet var nesten utelukkende bygget av deler hentet
Space Invaders Lysekrone med glød i mørket Action: 16 trinn (med bilder)
Space Invaders lysekrone med glød i mørket Handling: Bruk 3D -modellering/utskrift, laserskåret akryl, harpiksstøpning, UV -reaktivt pigment, lysdioder og noen enkle ledninger for å lage en høy stil og retro kult rominntrengende lysekrone eller lampe. Jeg har tatt med et fint triks for å lage buede hjørner av laserku