Runner spel i VHDL (1 / 10 steg)

Steg 1:

Den första stor bit av VHDL som vi genomfört var spelet logik. I den här modulen inom enheten skapat vi utgångar för de fyra hinder platserna, poängen, liv kvar och spelet över staten. Från det vi lagt i en klocka med önskad frekvens av 8Hz. Konstanterna som vi använde för att skapa det frekvensen är heltal och representerar vår frekvens av spelet logik uppdateringar. Nästa, vi genererat en slumpmässig sekvens för de hinder som ska visas. Med hjälp av en LFSR kunde vi ta itu med en pseudo-slumpmässiga nummergenerator att generera hinder i spelet. Obst_out är produktionen sett och att utdata skickas till modulen pick_a_lane som avgör vilken av de fyra körfält hindret kommer gå också.

Nästa del är att besluta om huruvida spelaren drabbades av ett hinder eller inte. Med hjälp av signaler som vi kunde hålla koll på var de spelare och hinder var hela tiden. Genom detta kunde vi också hålla reda på hur många träffar spelaren har gjort med hindret innan den når spelet över staten. En annan klocka genomfördes specifikt för "spelet logik" av kretsen. Det är mycket långsammare än andra klockan signaler eftersom den avgör hur ofta objekt på skärmen uppdateras och hur snabbt hinder som rör sig över skärmen. När vi hade "spel logik" klockan i, kunde vi skapa en global återställning. Denna återställning signal är kopplad till alla komponenter i "spelet logik" och när signalen är hög, återställer alla delar av spelet. Nästa, vi instansieras fyra SRs för de fyra körfält. Obst_in indata till SRs är kopplade till godtyckligt valda index för den LFSR lagrade 32-bitars binära tal. Resultaten av dessa SRs är kopplade till ourputs av modulen game_mechanics. En gång att fyra SRs var instansieras sätter vi i en LFSR som används för att generera nya hinder i de fyra körfält i en pseudo-slumpmässiga mode. Då en process används för att generera våra önskad "game clock" med en frekvens av 8Hz och signal enable_game_update blir bara hög 16 gånger per sekund. Därefter genom en serie av if/else uttalanden, en process var skapade för att bestämma rörelsen av spelaren. Spelaren är endast tillåtet att flytta upp eller ned mellan körfält. Det körs när en förändring i player input identifieras eftersom det är då man vill flytta sin karaktär. Efter den player_movement processen genomfördes, behövdes en träff identifieringsprocessen. Denna process är ansvarig för att kontrollera för att se om spelaren träffar ett hinder när hindret kommer in zonen"spelare". Tillsammans med denna hit_detection process, en process som kallas scoring_system sattes till handling genom en if/else uttalande som ökas en gång per sekund. Slutligen var en process som kallas check_for_game_over för att slutföra spelet logik. Med if/else-uttryck och utnyttja global_reset processen, har vi kunnat kontrollera om lose_state var hög eller låg. Om lives_left är lika med noll, då "Game Over".

Se Steg
Relaterade Ämnen

VHDL spel: LED - knappen Push spelet Instructable

Välkommen! Detta är en instructable att skapa en enkel VHDL spel med hjälp av lysdioder och knappar som vi kallade PushPace. Innan vi fortsätter, är här bakgrunden och inspirationen bakom spelet.Bakgrund Om du växte upp i 90-tal, är vi ganska säker p...

VHDL ljuskänsliga Synth maskin

Detta projekt och dess tutorial slutfördes som en del av vårt CPE 133 sista projekt på Cal Poly San Luis Obispo. Vårt mål var att skapa ett komplett logiska spel i VHDL med hjälp av en Nexys 3 FPGA styrelse och en off-board komponent. I stället för e...

Spela ett spel i Google Chrome Offline

Jag vet att det ser ut som ett skämt men det är inte... tro mig!Införliva alla steg här:-Steg 1:- Koppla från din internet-anslutning bara för en stund.Steg 2:- Öppna en ny flik i Google Chrome eller direkt öppna ett nytt fönster i Google Chrome.Steg...

BitRunner FPGA spelet

Skapa och spela upp egna bitars Runner spel. Ingen konsol eller biffiga dator krävs! Tryck på knappen dodge att undvika inkommande hinder för att uppnå högsta poäng! Detta projekt är hyggligt hårt, en utmaning för nybörjare men inte för experter.Dett...

FPGA Tic Tac Toe

"Tic Tac Toe? Vad är det? Jag har aldrig hört detta."-Ingen någonsinAv Ryan Frawley och Derek NguyenDenna guide visar dig hur man gör en arbetande Tic Tac Toe spel i VHDL på en Nexys 2 FPGA ombord. Denna handledning var gjort för en del av en Ca...

Blade Runner Harajuku lyser upp sandaler

Det är en plattform - och av världen platåskor. Göra några unika skor att visa upp på Harajuku och berätta för alla att detta är senast från Akihabara... Tja, delar från Adafruit.Detta skulle vara ett roligt projekt att replikera sedan Firewalker LED...

VHDL Etch-a-Sketch

För våra CPE 133 slutliga projektet på Cal Poly, San Luis Obispo, vi byggde ett Etch-a-Sketch med VHDL på Diligant nexys 3 styrelsen. En nexys 3 styrelse som kan bygga logiska kretsar utan att oroa om komplicerade externa gränssnitt, och mer avancera...

Kan inte ansluta till internet spel hacka

Jag slår vad nästan alla av er som läser denna sida har sett den kan inte ansluta till internetsida med den lilla dinosaurien.Och kanske ungefär hälften av er vet om spelet som är gömd i sidan. På sidan om du klickar på utrymmet eller upp pil startar...

Decimal till binär konvertering spel

"Det finns bara 10 typer av människor i världen: de som förstår binära och de som inte gör."Denna roliga och pedagogiska spelet testar din förmåga att konvertera decimaltal till binärtal. Det är också ett bra sätt att utmana dina vänner i en tre...

Den fantastiska labyrint spel för Nexys 3

Hej alla! Detta är hur du skapar en kan programmeras om labyrint spel med en Nexus 3 styrelse.Vi är två studenter på Cal Poly San Luis Obispo och detta är vårt sista projekt för vår Digital Design klass. Målet var att skapa ett spel med en Nexus 3 om...

Nexys-2 ljus Dodger spel

Minns du spendera hela eftermiddagen spela arkad stil spel som barn? Asteroider, Pac-Man, Galaga, Space Invaders, Breakout, Missile Command eller något annat. Har du någonsin velat återskapa spel som de av nostalgi, men visste inte var du ska börja?...

Pong spel med fpga kit

Hej var och en. här delade jag projektet "pong spelet med fpga kit". FPGA är field programmable gate array. Det är en teknik att vi kan utforma någon digital enhet genom programmering. Det betyder i fpga kit fungerar som alla digitala enheter so...

Nexys3 LED Timer spel

Detta är en handledning för hur man gör timer spel. Timer spelet är inspirerat av den lätta arkadspelet, spelet där ett ljus rör sig längs en sträng av lampor och du försöker stoppa det röda ljuset att vinna ett pris. Detta spel är olika i att när du...

Lägga till knappen Spela/hoppa över din fristående CD-ROM-enhet

om du vill göra en CD-spelare från en gammal CD-ROM enhet (Visa här) men den enhet du har inte har en PLAY/hoppa över knapp på framsidan... Dont vemod, kan du lägga till en till de flesta CD-enheter, >>>> läsa påSteg 1: Verktyg n StuffVerktyg:...

Grundläggande CMD spel (körbar och kod textfil ingår i länkar)

jag skrev ett spel i C-språket som körs i Kommandotolken.Den använder wasd-tangenterna för att flytta en 0 runt i ett hav av * s.Du kan ange upp till 6 wasd-tangenterna och tryck enter.Detta gör att du kan flytta en ruta i taget eller flytta många ru...

Batch-filen Dragon spel

Hur man gör en BATCH fil DRAGON spelJAG HAR EN UPPDATERAD VERSION PÅ DETTA SPEL:Tryck på StartSkriv i anteckningarI anteckningar kopiera och klistra in koden nedan:I övre höger om anteckningar klickar du på ArkivKlicka på Spara somVIKTIGT: Namnge fil...

Batch-filen Dragon spel uppdaterad

Här är min uppdaterade versionen av min gamla spelet Batch filen Dragon spel.Här är en länk till den gamla versionen instructable:Om du inte såg min gamla version, är här instruktionerna:Öppna AnteckningarKopiera och klistra in koden nedanKlicka i de...

Kommandofil Legend spel OP

Detta är min OP version av spelet legend:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::READ ME:: :: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...

3D-tryckt tacksägelse spel dekoration från 2D-bild med Tinkercad

Ja, en 3D-tryckt 2D sak. MEN - som innebär att bara om någon bild kan vara pressad och givit djup!Obs: Jag använder en Mac och ge dessa kortkommandon i detta Instructable - PC kommer verkligen bara vara annorlunda med CMD + _ genvägar.Jag fick en för...