LogoShadow3DRed1

En 茅ste sencillo documento, les adjunto el c贸digo de como he enviado datos mediante conexi贸n serial, desde Arduino al motor de desarrollo de videojuegos Godot Game Engine 3.

Todo 茅sto podr谩n verlo en mis tutos de Arduino paso a paso, al final de este post.

constintbuttonPin聽=聽2;
intbuttonState聽=聽0;聽聽聽

voidsetup()聽{
聽聽Serial.begin(9600);
聽聽//聽put聽your聽setup聽code聽here,聽to聽run聽once:
聽聽pinMode(buttonPin,聽INPUT);
}

voidloop()聽{
聽聽聽buttonState聽=聽digitalRead(buttonPin);

聽聽//聽check聽if聽the聽pushbutton聽is聽pressed.聽If聽it聽is,聽the聽buttonState聽is聽HIGH:
聽聽if聽(buttonState聽==聽HIGH)聽{
聽聽聽聽Serial.println(“1\n);聽聽
聽聽}聽else聽{
聽聽聽聽Serial.println(“0\n);聽聽
聽聽}

聽聽delay(1000);
}

En 茅ste caso, con un bot贸n conectado al puerto digital 2, enviaremos una se帽al a Godot indicando si el bot贸n est谩 presionado o no.

Recordemos que para el siguiente paso debemos tener instalada la extensi贸n adecuada para poder usar lenguaje Python en Godot, tal como se explica en el tutorial de nuestro canal Escuela de Juegos.

Una vez con eso, solo debemos crear un Sprite simple con la imagen que desees, ya que esa imagen cambiar谩 de color al presionar el bot贸n.

from godot import exposed, export

from godot import *

import serial


@exposed

class main(Node2D):


def _ready(self):

pass

def _process(self, delta):

sercom = serial.Serial(‘COM4’, 9600, timeout = 4)

dato = sercom.readline()

dato = dato.decode(“ascii”)

if(len(dato) > 0):

if(dato == “1\n”):

self.get_node(“Sprite”).modulate = Color(1,0,0)

else:

self.get_node(“Sprite”).modulate = Color(0,0,0)

sercom.close()


Dejar un comentario