¡Bienvenido/a a Pixel Wall-E, el proyecto donde la programación y el arte digital se encuentran!
¿Te gustaría ver a Wall-E crear pixel-art siguiendo tus instrucciones? Con Pixel Wall-E puedes escribir código sencillo, ejecutar tus comandos y observar cómo Wall-E da vida a tus creaciones píxel a píxel.
Pixel Wall-E es una aplicación educativa y divertida para aprender conceptos de programación, lógica y arte digital. Usando un pequeño lenguaje de comandos, puedes controlar a Wall-E para que pinte, borre, y cree figuras y patrones en un lienzo cuadrado.
- Clona este repositorio.
- Ve a la carpeta
Godot/Executable/y descomprime el archivo.zipque contiene el ejecutable (PixelWallE.exe). - ¡Haz doble clic en
PixelWallE.exey comienza a crear tu arte!
Nota: No necesitas instalar nada adicional. ¡Solo clona, descomprime y ejecuta!
- Editor de código integrado: Escribe tus comandos y ejecútalos al instante.
- Soporte para archivos: Guarda tus creaciones o carga archivos
.pwpara editarlos y mejorarlos. - Lenguaje propio fácil de aprender: Con instrucciones intuitivas y mensajes de error claros.
- Visualización en tiempo real: Observa cómo Wall-E interpreta y dibuja tu código.
- Errores detallados: El compilador te ayuda a encontrar y corregir tus errores.
El lenguaje de Pixel Wall-E está compuesto por instrucciones, asignaciones, expresiones, funciones, etiquetas y saltos condicionales. Todas las instrucciones van en líneas separadas y se ejecutan de arriba hacia abajo.
Inicializa a Wall-E en la posición (x, y) del canvas.
✅ Debe ser la primera instrucción del programa y solo puede aparecer una vez.
Mueve a Wall-E a la posición (x, y) del canvas.
Cambia el color del pincel. Valores válidos:
"Red", "Blue", "Green", "Yellow", "Orange", "Purple", "Black", "White", "Transparent"
"White"puede usarse como borrador."Transparent"implica no pintar.
Modifica el tamaño de la brocha.
kdebe ser un número impar positivo.- Si es par, se usa el número impar inmediatamente menor.
- Valor por defecto: 1.
Dibuja una línea desde la posición actual. Wall-E se mueve hasta el último píxel dibujado.
Direcciones válidas:
(-1, -1) Diagonal arriba izquierda
(-1, 0) Izquierda
(-1, 1) Diagonal abajo izquierda
( 0, 1) Abajo
( 1, 1) Diagonal abajo derecha
( 1, 0) Derecha
( 1, -1) Diagonal arriba derecha
( 0, -1) Arriba
Dibuja un círculo con centro a radius de la posición actual en la dirección (dirX, dirY).
Dibuja un rectángulo. Wall-E se mueve distance en (dirX, dirY) y esa es la posición central del rectángulo.
Rellena de color los píxeles contiguos al actual que tienen el mismo color original y no estén bloqueados por otros colores.
variable <- expresión
- El nombre puede tener letras, números y espacios.
- No puede empezar con número ni con
-. - La expresión puede ser aritmética o booleana.
Componentes válidos:
- Literales enteros
- Variables numéricas
- Funciones numéricas
- Operaciones:
+,-,*,/,**,%
- Comparaciones:
==,>=,<=,>,< - Operadores:
&&(AND)||(OR) → tiene mayor precedencia que AND
x <- GetActualX()
Funciones disponibles:
GetActualX()→ Coordenada X actualGetActualY()→ Coordenada Y actualGetCanvasSize()→ Lado del canvasGetColorCount(string color, int x1, y1, x2, y2)→ Cuántos píxeles del color hay dentro del cuadrado formado por las dos esquinasIsBrushColor(string color)→1si el color actual es eseIsBrushSize(int size)→1si el tamaño actual coincideIsCanvasColor(string color, int vertical, int horizontal)→ Verifica el color de una casilla relativa a Wall-E
Marcan una línea del código. No hacen nada por sí mismas, pero permiten hacer saltos.
loop_start
GoTo [label] (condición)
labeldebe existir en el código.condiciónpuede ser:- Variable booleana
- Comparación entre literales o variables numéricas
Si la condición es verdadera, el flujo salta a la etiqueta. Si es falsa, se continúa a la línea siguiente.
Spawn(0, 0)
Color("Black")
n <- 5
k <- 3 + 3 * 10
n <- k * 2
actual_x <- GetActualX()
i <- 0
loop1
DrawLine(1, 0, 1)
i <- i + 1
is_blue <- IsBrushColor("Blue")
GoTo [loop_end] (is_blue == 1)
GoTo [loop1] (i < 10)
Color("Blue")
GoTo [loop1] (1 == 1)
loop_end
- Abre PixelWallE.exe
(¡Recuerda haberlo descomprimido desde el ZIP!) - Escribe tu código en el editor o importa un archivo
.pw. - Pulsa el botón "Run" para ejecutar tus comandos.
- Observa a Wall-E en acción en el canvas.
- Guarda tu arte o exporta tu código para compartirlo.
- Guardar: Usa el botón “Save” para exportar tu código actual a un archivo
.pw. - Cargar: Usa el botón “Load” para abrir un archivo
.pwexistente y continuar editando.
- Usa colores y tamaños de pincel para lograr efectos de sombra o volumen.
- Puedes crear figuras complejas combinando funciones y variables.
- Si ocurre un error (por ejemplo, si te sales del canvas), Pixel Wall-E te avisará con un mensaje claro.
- Desarrollado por Javier Aristigui Aguilar.
- 2do Proyecto de Programacion, Ciencias de la Computación, MATCOM 2024-2025.
[MIT]
¿Dudas, sugerencias o quieres mostrar tu arte?
¡Abre un issue o contacta a Javieraa05 aquí en GitHub!
¡Diviértete programando y creando arte con Wall-E!