Kazalo:

3D4x igra: 3D 4x4x4 Tic-Tac-Toe: 5 korakov (s slikami)
3D4x igra: 3D 4x4x4 Tic-Tac-Toe: 5 korakov (s slikami)

Video: 3D4x igra: 3D 4x4x4 Tic-Tac-Toe: 5 korakov (s slikami)

Video: 3D4x igra: 3D 4x4x4 Tic-Tac-Toe: 5 korakov (s slikami)
Video: Galactic Civilizations III - 3D 4x Aurora 2024, November
Anonim
Image
Image
3D4x igra: 3D 4x4x4 Tic-Tac-Toe
3D4x igra: 3D 4x4x4 Tic-Tac-Toe
3D4x igra: 3D 4x4x4 Tic-Tac-Toe
3D4x igra: 3D 4x4x4 Tic-Tac-Toe
3D4x igra: 3D 4x4x4 Tic-Tac-Toe
3D4x igra: 3D 4x4x4 Tic-Tac-Toe

Ste utrujeni od igranja istih, starih, dolgočasnih, 2-dimenzionalnih kartic-tac-toe ?? No, imamo rešitev za vas! Tic-tac-toe v 3-dimenzijah !!! Za 2 igralca v tej kocki 4x4x4 dobite 4 LED zapored (v katero koli smer) in zmagate! Ti uspe. Ti igraj.

Korak: Zberite komponente in orodja

Zberite komponente in orodja
Zberite komponente in orodja

Najpomembnejša sestavina te 3D-kartice Tic-Tac-Toe je LED. Izbrali smo PL9823, ki že ima vgrajen krmilnik. Ima štiri zatiče (vhod za podatke, napajanje z napetostjo, ozemljitev, izhod za podatke) in vam omogoča enostavno obravnavanje in nadzor barve LED. Mrežno strukturo je mogoče zgraditi na različne načine, vendar je bila to za nas najcenejša, trdnejša in najbolj estetska možnost.

Seznam komponent:

  • Arduino (uporabili smo Uno)
  • PL9823 LED (najmanj 64)
  • Lesene palice za nabodala (dolge 24 cm)
  • Ožičenje (uporabili smo notranjost starega ethernetnega kabla)
  • Gumbi (trenutno stanje)
  • 7 uporov (220Ohm)
  • Ogledne plošče (1 za gumbe in predvajanje, 1 za enostavno povezavo plošč z Arduinom)
  • Plošča iz polistirenske pene (~ 2x30x30cm za izdelavo plošč)
  • Blok iz penastega polistirena (~ 7x25x25cm kot osnova za celotno mrežo)

Seznam orodij:

  • Spajkalnik
  • Spajkalnik
  • Lepilo
  • Ravna z ravnilom
  • Klešče
  • Odstranjevalci žice
  • Rezalniki žice
  • Škarje
  • Marker
  • Peresnik
  • Pinceta

2. korak: Ustvarite mrežo

Image
Image
Naredite mrežo
Naredite mrežo
Naredite mrežo
Naredite mrežo

Posamezno izdelujemo 4 plošče LED 4x4.

  • 00: Za postavitev plošče vzemite stiropor. Narišite vzorec. V tem primeru smo uporabili 6 cm razmika med LED diodami z 2 cm na koncih.
  • 01: Vstavite zatiče LED v stiropor. Pomembno! Prepričajte se, da ste vstavili vse LED z enako usmeritvijo. V našem primeru smo izbrali izhodni zatič levo.
  • 02: Zdaj postavite lesene palice za nabodala na obeh straneh LED v vrstah in pazite, da bodo vse točke obrnjene v isto smer. Lepilo pritrdite na stranice LED žarnic in pustite, da se posuši.
  • 03: Enako naredite za stebre lesenih palic za nabodala na obeh straneh LED, pri čemer pazite, da bodo vse točke obrnjene v isto smer. Lepite in pustite, da se posuši.
  • 04: Nežno odstranite tako, da zrahljate LED okoli. Dvignite ploščo in jo obrnite. Lepite zadnjo stran, da bo bolj varna.
  • 05: Ko se vse posuši, upognite zatiče, da olajšate spajkanje in se izognete prečkanju električnih vodov. Uporabljamo pinceto in upognemo zatič od blizu osnove.
  • 06: Zdaj pripravite žice. Uporabili smo stari ethernetni kabel, ki ima v notranjosti 4-zvite parne žice. Odstranite izolacijo in pazite, da ne prerežete majhnih žic. Nato odvijte, izberite barve, ki ustrezajo različnim črtam, in razrežite na pravo dolžino med LED diodami. Nato s koncev odstranite malo izolacije. Izbrali smo tla = zelena, Vdc = modra, podatki v/izhod = bela.
  • 07: Spajka! Priključkov je veliko (64x4), zato pazite, da jih pravilno spajkate.
  • 08: Odstranite ploščo in jo položite na podlago iz pene!

3. korak: naredite igralno palico

Naredite igralno palico
Naredite igralno palico
Naredite igralno palico
Naredite igralno palico

Z navigacijsko ploščo smo naredili krmilno palico za krmarjenje po mreži in izbiro. Postavili smo skakalce, upore in gumbe, da oblikujemo vezje (glej diagram), ki določa smerni krmilnik (6 gumbov, 1 za vsako smer) in izbirni gumb (vstopi v potezo igralca). 5V in ozemljitev sta povezana z ustreznimi vrati na Arduinu. Za analogne in digitalne vhodne nožice smo izbrali vrata Arduino A5 oziroma 2.

Izbirni gumb ima osnovno shemo z uporom proti strjevanju. Ukaz za smer temelji na uporni lestvi, ki deluje kot vezje delilnika napetosti: napetost do analognega vhoda je odvisna od pritisnjenega gumba in jo Arduino interpretira kot eno ukazno smer.

4. korak: Napišite kodo

Napišite kodo
Napišite kodo

Naložili smo našo kodo za uporabo:) Najprej naredite električne povezave z Arduinom. Poleg Arduina smo postavili mini ploščico, da bi bilo malo lažje. Arduino "GND" in "5V" smo priključili na 2 liniji kruha, kjer smo nato priključili ustrezno ozemljitev in Vdc iz vsake plošče. Za vnos podatkov in izhod podatkov smo izbrali 4 različne zatiče Arduino, 13, 10, 7 in 4 za vsako od plošč. LED -diode PL9823 je mogoče posamično nasloviti po zaporedju zaporednih LED -diod. Na primer, če želite vklopiti 1. LED v določeno barvo, naslavljajte LED [0]. Za 16. LED, naslovno LED [15]. Zdaj ste pripravljeni na kodiranje in igranje z lepimi lučmi! Spodaj je splošna razlaga kode 3D igre s taktifikacijo.

Koda igre 3D4x

Uporabljamo knjižnico fastled.h, ki nam omogoča upravljanje mikrokontroliranih LED.

Kocka je shranjena tako rekoč v tridimenzionalnem nizu 3D "TTTMap", kjer je lahko vsak element v 1 od 5 stanj glede na ustrezno svetlobo v lasti: 0 = brez igralca, 1 = igralca 1, 2 = igralca 2, 3 = igralec 1 v zmagovalni kombinaciji in 3 = igralec 2 v zmagovalni kombinaciji. Za preslikavo elementov navidezne kocke v TTTMap na prave LED diode se uporabljajo celoštevilski nizi LEDMap0, LEDMap1, LEDMap2, LEDMap3.

Funkcija »setup« inicializira vrata Arduino, povezana s ploščo, inicializira vse LED diode v »črno« in inicializira elemente matrike TTTMap na 0.

Funkcija "zanka" izvaja funkcije "ReadButtonInput ()", "SendLED ()" in v primeru zmage enega igralca funkcijo "VictoryAnimation ()". Prva funkcija bere analogni vhod ukaza za smer in digitalni vhod izbirne tipke. Logični spremenljivki "ButtonPushed" in "SelectPushed" se uporabljata, da se izognemo ponovitvi gibanja s hitrostjo zanke, ko gumb držimo. Funkcija »SendLED ()« osveži stanje LED s pošiljanjem zaporednega krmilnega signala v skladu s podatki v zemljevidu TTTMap. Temeljna funkcija je "CheckVictory ()", ki jo pokliče "ReadButtonInput ()" vsakič, ko pritisnete gumb za izbiro. Ta funkcija preveri, ali izbrana točka v prostoru naredi zmagovalno kombinacijo z okoliškimi zatiči. V primeru zmagovalne kombinacije se točke v TTTMap -u podpišejo s številko 3 ali 4, glede na igralca, ki zmaga, in vznemirljivo "VictoryAnimation ()" teče!

Če želite znova igrati, samo pritisnite gumb za ponastavitev na Arduinu:)

5. korak: Igrajte se s prijatelji

Igrajte se s prijatelji!
Igrajte se s prijatelji!
Igrajte se s prijatelji!
Igrajte se s prijatelji!
Igrajte se s prijatelji!
Igrajte se s prijatelji!

Tu ni nobene razlage … UŽIVAJTE!

Priporočena: