Skip to content
Pequeño curso de Processing en 3 clases
Branch: gh-pages
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
clase_01 cambios de la primera clase Jun 26, 2018
clase_02
clase_03 actualización Mar 26, 2019
img orden de carpetas Jun 10, 2018
presentaciones
.gitattributes
.gitignore
LICENSE
readme.md

readme.md

Programación Creativa

mesh network

Este curso corresponde a una introducción al diseño de software como una herramienta de expresión artística construyendo obras visuales cinéticas o interactivas basadas en Processing.

Trataremos los fundamentos de la forma computacional y de la estructura de la programación gráfica en consonancia con principios matemáticos abstractos. Te familiarizarás con algoritmos básicos, geometría computacional y simulación cinemática además de los conceptos necesarios para construir programas.

Objetivos

  • Descubrir herramientas programáticas de diseño digital
  • Desarrollar pensamiento algorítmico
  • Transladar pensamiento plástico y/o constructivo hacia algortimos programáticos
  • Programar animaciones y efectos visuales
  • Integrar diferentes tecnologías y herramientas digitales para comunicar los proyectos de una manera novedosa.

Clase I ~ ↓pdf

diy

  1. Una breve historia, e introducción a Processing como entorno de desarrollo
  2. Dibujo, trazo y color line(), rect(), ellipse(), triangle(), beginShape(), endShape(), vertex(), curveVertex(), bezierVertex()
  3. Funciones
  4. Estructura de un programa

Encargo

Desde las funciones de dibujo (formas y colores) diseñar una forma dinámica para dar cuenta del paso del tiempo.

Referencias

  1. Processing
  2. A Modern Prometeus
  3. Lista de tutoriales

Clase II ~ ↓pdf

  1. Variables o tipos de datos boolean, int, float, color repeticiones for, while y condicional if()
  2. Variables del entorno mouseX, mouseY, millis(), second(), etc.
  3. Variable scoping, funciones personalizadas y anidamiento
  4. Espacio 2D y 3D y funciones de transformación pushMatrix()& popMatrix(), rotate, translate, scale

Referencias

  1. The Coding Train
  2. The Nature of Code, libro de Dan Shiffman

Encargo

A partir del ejemplo visto en clase explorar nuevas formas de aumentar el trazo del dibujo. A partir de los valores mouseX, mouseY, pmouseX, pmouseY podemos deducir velocidad y ángulo entre otras cualidades. Este trabajo es ocasión de:

  • construir una función personalizada que reemplace line(mouseX, mouseY, pmouseX, pmouseY)
  • utilizar la repetición for() para construir elementos más complejos
  • interpretar el input del usuario de forma creativa. Por ejemplo, la función atan2() permite obtener el ángulo entre la posición previa y la actual del mouse.

Clase III ~ ↓pdf

  1. Arreglos de datos float[], int[], etc.
  2. Objetos y su metáfora de programación class{}
  3. Eventos mousePressed, mouseReleased, etc.
  4. Extendiendo processing: Bibliotecas
  5. Partículas y simulaciones
  6. P5.js
  7. Arduino

Referencias

  1. Process Compendium, documento completo
  2. Process Compendium, Casey Reas (video)

Encargo

Se trata de un proyecto individual libre que incorpore los conceptos como ciclos for() anidados (2D o más), interactividad mousePressed(), keyPressed(), y/o objetos class{}. La entrega final se realiza en el Google Drive Compartido.

Para continuar el camino

You can’t perform that action at this time.