HariFun #136 - comment écrire un jeu (5 / 8 étapes)

Étape 5: Ajouter les palettes

Pour ceux qui sont nouveaux à l’électronique, ces résistances ajustables sont appelés potentiomètres.

Je préfère avoir le bouton vers le haut, donc j’ai soudé des pistes sur le potentiomètre. Si vous faites cela, assurez-vous d’utiliser des fils isolés parce que le corps du potentiomètre est en métal et pourrait facilement court-circuiter les fils.

Alternativement, vous pourriez juste brancher les fils du potentiomètre sur le montage d’essai. Si vous faites cela, je recommande les fils de flexion 90 degrés alors qu’ils ne seraient pas répandre la maquette conduit trop. (Voir photo)

Nous il fil vers le haut comme une échelle de résistance. Un fil va au sol, l’autre à + 5V et le milieu fil mobile se raccorde sur une broche analogique de Arduino.

À un extrême, la sortie 5V, à l’autre extrême, la sortie sera 0V, n’importe où entre les deux, nous allons avoir une valeur comprise entre 0 et 5V.

Nous pouvons lire cette tension à l’aide à l’aide de analogRead(). La valeur retournée par analogRead n’est pas une valeur fractionnaire entre 0 et 5. Au lieu de cela, il retourne un entier compris entre 0 et 1023. Pour mapper cette gamme dans la gamme actuelle qui correspond à la position verticale de la pagaie, nous allons utiliser la fonction de map() Arduino.

paddleYposition = carte (potentiometerValue, 0,1023, 0,36).

Répéter pour l’autre côté et nous a presque écrit un jeu jouable !
La balle rebondit toujours même lorsqu’il manque le ballon. Nous allons corriger cela.

 // Arduino Pong by Hari Wiguna, 2016// v0.0 - draw ball // v0.1 - move ball // v0.2 - using millis(), move in Y direction too // v0.3 - Paddles! #include "U8glib.h" //== Preferences == U8GLIB_PCD8544 u8g(13, 11, 9, 8, 10); // SPI Com: SCK = 13, MOSI = 11, CS = 9, A0/DataCommand = 8, Reset = 10 // Analog pins where we connect the potentiometers to int paddle0Pin = A1; int paddle1Pin = A0; //== Game Variables == u8g_uint_t courtWidth, courtHeight; u8g_uint_t ballSize = 4; u8g_uint_t ballX; u8g_uint_t ballDirectionX = 1; u8g_uint_t ballY; u8g_uint_t ballDirectionY = 1; u8g_uint_t paddleWidth = 2; u8g_uint_t paddleHeight = 8; unsigned long timeToMove; int animationSpeed = 20; void MoveBall() { if (millis() > timeToMove) { ballX += ballDirectionX; if (ballX >= (courtWidth - ballSize) || ballX <= 0)ballDirectionX = -ballDirectionX; ballY += ballDirectionY; if (ballY >= (courtHeight - ballSize) || ballY <= 0) ballDirectionY = -ballDirectionY; timeToMove = millis() + animationSpeed; } } void DrawPaddle(u8g_uint_t paddleX, int paddlePin) { int analogValue = analogRead(paddlePin); // returns 0 through 1023 // Convert analogValue ranging from 0..1023 to paddleY ranging from 0..(courtHeight-paddleHeight) u8g_uint_t paddleY = map(analogValue, 0,1023, 0,courtHeight-paddleHeight); // Draw the paddle u8g.drawBox(paddleX, paddleY, paddleWidth, paddleHeight); } void DrawPaddles() { DrawPaddle(0, paddle0Pin); DrawPaddle(courtWidth - paddleWidth, paddle1Pin); } void setup(void) { u8g.setRot180(); // flip screen courtWidth = u8g.getWidth(); courtHeight = u8g.getHeight(); } void loop(void) { u8g.firstPage(); do { MoveBall(); u8g.drawBox(ballX, ballY, ballSize, ballSize); DrawPaddles(); } while ( u8g.nextPage() ); } 

Articles Liés

Comment écrire une histoire

Comment écrire une histoire

Ça fait longtemps! Je suis désolé que je n'ai pas été poster quoi que ce soit dans les âges ! Beaucoup se passe bien, mais j'ai commencé un nouveau rituel (voir dernière étape pour plus d'informations). en tout cas, j'ai gagné trois concours jusqu'à
Comment faire un jeu de société de voyage

Comment faire un jeu de société de voyage

il s'agit d'un jeu de société de voyage mini pour 2 joueurs ! J'avais déjà fait cela avant j'ai fait ce tutoriel donc pas que chaque étape sera montré.Étape 1: fournitures 1. Altoids tin2. 2 fiches3. différents marqueurs ou stylos de couleur4. au moi
Comment faire un jeu personnalisé de cartes à jouer - approche 2

Comment faire un jeu personnalisé de cartes à jouer - approche 2

dans Comment faire un jeu personnalisé de cartes - 1 approche, j'ai présenté l'approche que j'utilise actuellement pour faire des cartes à jouer pour les jeux je suis prototypage. Je pense que c'est la meilleure approche, mais ce n'est pas le moins c
Comment jouer le jeu.

Comment jouer le jeu.

OK, par moi, vous dire comment jouer le jeu , que je perds immédiatement, je vais renoncer à ce moment de non play et vous montrer comment jouer.Dans le jeu , il y a quatre règles simples - ils sont comme suit :Tout le monde à chaque fois à n'importe
Comment jouer le jeu des déménagements

Comment jouer le jeu des déménagements

Le Jeu des déménagements a eu plusieurs noms au cours des années. Quand j'ai appris à ce sujet, il a été appelé juste Le jeu, mais c'était avant l'invention de The Game (que je viens de perdre).Autres noms qu'elle a été stationnaire de The Game, le j
Comment faire un jeu relient quatre

Comment faire un jeu relient quatre

4-in-a-row est un de ces jeux que vous jouez avec n'importe quel enfant de l'âge, et qu'ils peuvent jouer la concurrence. Mes enfants l'apprécie vraiment, et depuis nous il joue à l'occasion, je suis arrivé à penser ce qu'il faudrait pour rendre le j
Comment écrire et lire le Braille

Comment écrire et lire le Braille

aveugle est un handicap terrible.  Mais sachant comment écrire et lire le braille, vous pouvez communiquer avec les personnes aveugles. Donc, si vous savez comment écrire ou le lire alors c'est vraiment bon pour vous. Mais si vous ne puis collez avec
Comment écrire le nom sur le riz ?

Comment écrire le nom sur le riz ?

J'ai vu dans certains endroits touristiques dans mon pays, artistes écrire votre nom sur une feuille de riz.Donc il a créé quelque intérêt pour moi d'écrire le nom sur le riz moi-même.Pour ce projet, j'avais écrit mon nom en abrégé AKS & bricolage,Ét
Comment faire un jeu personnalisé de cartes à jouer - approche 1

Comment faire un jeu personnalisé de cartes à jouer - approche 1

il y a plusieurs façons de faire des jeux de cartes personnalisés, voici ma première approche et après Comment faire un jeu personnalisé de cartes - 2 approche, je vais montrer quelques autres approches. Je crois que c'est le meilleur que j'ai essayé
Comment écrire un Journal

Comment écrire un Journal

Im faire ce instructable parce que certaines personnes sont très mal sur le sujet et pense qu'un journal doit être fait d'une certaine manière et écrit exactement comme tout autre journal suivant un certain guide... c'est très certainement pas le cas
Comment écrire O2 et x² dans PowerPoint ?

Comment écrire O2 et x² dans PowerPoint ?

Aujourd'hui, je vais vous montrer comment écrire oxygène O2 2 selon le type et 2 de x² comme type. Jusqu'ici, nous l'écrivons comme O2 pour Oxigen et X ^ 2 x carré. Maintenant, nous allons faire cela sur powerpoint.Étape 1: Exposant et indiceCréateur
Comment écrire un GUI de Ardulink, au contrôle Arduino

Comment écrire un GUI de Ardulink, au contrôle Arduino

dans ce tutoriel, vous pouvez lire comment écrire, juste en 10 étapes, un GUI de Ardulink comme celui montré ici. Vous devez juste cinq minutes de suivre un tutoriel vidéo et à cinq minutes pour lire ce tutoriel.Ardulink est une bibliothèque open sou
Comment écrire un rapport de laboratoire de chimie générale

Comment écrire un rapport de laboratoire de chimie générale

cette instructable va vous apprendre comment écrire un rapport de laboratoire simple mais bon pour un cours de laboratoire chimie générale niveau Collège. Pour effectuer cet atelier, vous aurez besoin d'accès à un programme de Microsoft Word ; toutes
Comment écrire un Simple programme C++

Comment écrire un Simple programme C++

dans ce tutoriel, vous apprendrez comment écrire un programme dans le langage de programmation C++. Cela va durer plus de 10 étapes qui vont expliquera un simple programme C++. Les sujets qui couvrent de chacune des étapes dans ce tutoriel sont souve