Pong op de PIC XGS (3 / 36 stap)

Stap 3: Spel constructies - grafische Engine

Mijn doel is om niet alleen laten zien hoe te schrijven van Pong op de PIC XGS, maar het denkproces achter de daadwerkelijke bouw. De volgende paar stappen zijn uitleg over de verschillende elementen die een spel en kunnen gemakkelijk worden toegepast op andere games. Als u op het bit om te zien wat code kauwen bent, slaat u de stappen met een adellijke titel spel construeert en programmastructuur.

Een basic-versie van Pong zal hebben enkele grafische objecten op het scherm. De grafische motor trekt, ten minste drie objecten, in twee kleuren: twee peddels en een bal. De tekenobjecten is een kwestie van plotting pixels op het scherm. De grafische engine kan geometrisch, drie rechthoeken tekenen op het scherm om te voldoen aan deze minimumvereisten voldoet. Het wijzigen van het programma tot het opstellen van de bal als een cirkel in plaats van een vierkant wordt overgelaten als een oefening. De keuze van kleuren voor de achtergrond en de grafische objecten is niet belangrijk, zolang de achtergrond en de objecten verschillend zijn, contrasterende kleuren. Ervan uitgaande dat de stuurprogramma's kunnen alleen het plot van pixels, is de gemakkelijkste manier om een rechthoek lussen terwijl doorlopen over het gebied van de gewenste rechthoek gebruiken. Uitzetten van elke pixel in een rij totdat het aantal gewenste kolommen is bereikt dan verplaatsen naar de volgende rij is waarschijnlijk de meest intuïtieve manier om een rechthoek ingevuld. Bij de beslissing lengtes en breedtes voor de bal en de peddels, zou goede programmering praktijken suggereren met behulp van constanten. Terwijl "fine-tuning"-de look, veranderen de waarden slechts eenmaal veel beter dan moetend jagen overal in het programma waarin deze waarden worden gebruikt is.

De voor de hand liggende brute-force benadering van het scherm vernieuwen werkt op moderne computers heel mooi zonder flikkeren. Bij het begin, deze benadering zal worden gebruikt voor eenvoud en vervolgens manieren ter verbetering van de methodologie om snellere resultaten te bereiken zal worden besproken. Wanneer het scherm te vernieuwen, de algemeen algoritme zal zijn te stellen elke pixel op de achtergrondkleur en teken vervolgens de objecten in hun respectieve locaties met een andere kleur bovenop de recent terugstellen achtergrond. In de sectie optimalisatie het getoond dat dit algoritme is niet de beste manier om dingen te doen, maar gedogen van de inefficiëntie voorlopig in een gemakkelijker begrip resulteren zal van de werking van het spel als geheel.

Plaatsing van de objecten op het scherm zal vereisen sommige aangepaste terminologie en afbeeldingen te beschrijven effectief. Deze implementatie van Pong zullen trouw aan enkele van de vroegste incarnaties met betrekking tot de plaatsing van de schoepen. De schoepen zal verticaal bewegen op een vast punt op het scherm, in plaats van zijwaarts bewegen op een vaste verticale punt. Het feitelijke besluit is tamelijk willekeurige, beide versies zal werken in zeer vergelijkbaar mode, maar dit zal later gevolgen hebben wat spel logica. Het scherm van het spel zal verwijzen naar de begrensde gedeelte van het scherm waar alle actie plaatsvindt. De put is de ligging tussen de linker- of rechterrand van het scherm van het spel en de vaste x-coördinaat waar de peddel zal omhoog of omlaag verplaatsen. De peddel hoogte en breedte van de peddel zijn vanzelfsprekend, maar met deze implementatie, de peddel hoogte groter moet zijn dan de breedte van de peddel.

Beschrijven van de locatie van de game objecten binnen het scherm van de spelen, hoeft het programma niet te weten waar elke pixel is op het gebied van het object. Plukken van een willekeurig punt kunnen berekeningen worden gebruikt om elke andere pixel in het object. Er zijn een paar van de hand liggende keuzes voor het punt, maar met behulp van de linker bovenhoek zal de Conventie gebruikt voor dit programma.

Gerelateerde Artikelen

Interactieve LED Beer Pong tafel

Interactieve LED Beer Pong tafel

Maak uw eigen interactieve LED Beer Pong tafel!Dit instructable zal u door alle stappen te begeleiden om het maken van een one-of-a-kind bier pong tafel compleet met kopje opsporen van RGB peulen, automatische bal sluitringen, een 32 x 12 ping pong b
Handheld Pong & Invaders op de goedkope (Arduino compatibel)

Handheld Pong & Invaders op de goedkope (Arduino compatibel)

Een retro hand-held gaming systeem goedkoop genoeg voor een kids' project. Mogelijk? Absoluut! Breng enkel op de kracht van Arduino en goedkope Chinese onderdelen!Dit project werd ontworpen als een soldeer project voor een groep van half-een-dozijn 9
Hoe maak je een ping pong ball gun

Hoe maak je een ping pong ball gun

ben je moe van office/klas/achtertuin oorlogen zonder stijlvolle of efficiënte wapens?Moe van het krijgen schot met een goedkoop plastic bb gun dat doet pijn als hel en pauzes na 5 schoten?Wilt u uw collega's / vrienden zonder zorgen over het gevaar
Pong Watch

Pong Watch

tijd voor een ander retro project, ditmaal een draagbaar - altijd op - Pong Watch. Geïnspireerd door de klassieke video game, Pong.Hier is de video van het in actie.https://Youtu.be/E3OZoS39RkkStap 1: Onderdelenlijst Horloge behuizing - goedkope 99p
De vier spelers koffietafel Pong Video Game.

De vier spelers koffietafel Pong Video Game.

UPDATE 12 APRIL 2011Belangrijk! Ik heb in kennis gesteld van een probleem met de printplaat ontwerp met betrekking tot de twee drukknoppen. Om de knoppen goed te laten werken moet u hen verbinden met de haven uitbreiding in plaats van de aansluitinge
Pimp mijn Pong

Pimp mijn Pong

maandag 9 maart:Ik krijg wind van dit Think Geek hacks contest, een week laat, franticly, ik raakte thinkgeek.com op zoek naar een gemakkelijk doden, budget en ideeën die zowel lege opdagen.Hoe zit het met die pong kit ~ 2 jaar geleden kocht ik van h
Ping-Pong Blinky

Ping-Pong Blinky

Ok, ik kocht de TI MSP-EXP430G2 Dev-bestuur een tijdje geleden, en het was over de keer dat ik het uit, zoals altijd, met LED's en Ping-Pong balletjes probeerde.Het verdwijnt tussen de kleuren.U moet:Een 2xAA batery houder, met 2 AA-batterijenEen 9v
Gemakkelijke opklapbare Ping-pong tafel

Gemakkelijke opklapbare Ping-pong tafel

Laten we een opklapbare ping pong tafel als mijn eerste DIY-project gepubliceerd in instrucables.com. De werkelijke afmetingen van een een ping pong tafel zijn 274 x 152 cm, als gevolg van de moeilijkheid van vervoer, onze tafel zal hebben de volgend
Ping Pong Ball Full colour Binary Clock

Ping Pong Ball Full colour Binary Clock

Kleur veranderende binaire klok 24 uur met behulp van ping pong ballen en full-colour LED's en een Funduino 8 * 8 matrix bord.Ik heb al een kleine 12Hr binaire klok gebouwd en het voorzien in een computer, dit werkte heel goed, maar was slechts echt
Een ping pong bal bij zal drijven!

Een ping pong bal bij zal drijven!

Hallo!Ik heb altijd gefascineerd door dingen die draadloos worden gecontroleerd door bewegingen van de hand die waarschijnlijk waarom ik een Wii eigen nu dat ik ben te denken over het. Maar ik heb niet echt gekregen om controle van de beweging van mi
PIC 12F675 programmeur/OscCal herstellen/Tester

PIC 12F675 programmeur/OscCal herstellen/Tester

Een van mijn circuits dat ik heel vaak (20-40 tegelijk), gebruik een PIC 12F675 bouwen. Ik had de volgende problemen:De planken die ik maak, heeft geen in-circuit programming mogelijkheden. Dit is om voor de lay-out van een klein PC-bestuur. Foto's m
Laat een PIC microprocessor program

Laat een PIC microprocessor program

OK hoe hard kan een PIC microprocessor programmering worden?Nou het hangt ervan af, sommige zijn harder dan anderen voor verschillende redenen, de programmeertaal, het type microprocessor, het gebruiksgemak van de software voor het bewerken en vooral
Low-Cost IC Test Clip voor PIC ICSP

Low-Cost IC Test Clip voor PIC ICSP

Ik maakte de Low Cost IC Test Clip voor ICSP voor PIC Microcontrollers.http://Neo-Sahara.com/wp/ic_test_clipStap 1: Koperen band en doek peg gebruiken.Stap 2: De koperen tape zetten op de doek peg en snijd de tapes als 2,54 mm pitch.Stap 3: Soldeer k
Ping Pong Ball Sparkler

Ping Pong Ball Sparkler

Ik vonk beetje.Stap 1: verzamelen Verzamelen een ping pong bal en een doos of twee van de Sprite bommenStap 2: Maak een gat Maakt een klein gaatje in de balStap 3: Plaats ballen In Plaats van de kleine bommen binnenStap 4: gooien Kunt u over 5-6 grot