Ir al contenido

Unidad 5

Un sistema de partículas es un modelo computacional para gestionar colecciones dinámicas de entidades. Cada entidad, cada partícula, tiene estado, ciclo de vida y comportamiento propios. El sistema existe para orquestar esas entidades: crearlas, actualizarlas, eliminarlas y, en algunos casos, exponer fuerzas que afectan a todas ellas.

p5.js es el medio, no el fin. Los mismos principios que explorarás aquí, emisión, ciclo de vida, fuerzas, herencia, gestión de memoria, están presentes en TouchDesigner cuando construyes sistemas de partículas reactivos al audio, en Unity cuando configuras un VFX Graph, en Blender cuando usas Geometry Nodes, y en cualquier motor gráfico profesional. Lo que cambia entre herramientas es la interfaz y la sintaxis. Lo que permanece es el modelo.

Este tipo de sistemas ha dado lugar a referentes visuales notables: Robert Hodgin, exploró la física de partículas como lenguaje visual; el VFX Graph de Unity permite sistemas de millones de partículas procesados en GPU; los sistemas de partículas de TouchDesigner se usan en instalaciones reactivas en tiempo real; Blender Geometry Nodes es hoy un entorno de simulación de propósito general que incluye partículas. Entender el modelo subyacente es lo que te permite mover de un entorno a otro con fluidez.


Criterio (peso)Cumple plenamente (5.0)Se cumple medianamente (4.0)Problemas importantes (3.0)Falta comprensión básica (2.0)No hay evidencia (0.0)
1. Aplicación + bitácora (40%)La pieza se ejecuta sin fallos. La bitácora documenta el proceso completo: concepto, bocetos, mapa de decisiones, tabla comparativa, análisis por capas de los ejemplos. Todo es consistente y verificable.La pieza funciona y la bitácora cubre lo esencial, pero hay 1-2 vacíos menores (ej: la tabla comparativa está incompleta o falta algún análisis).La pieza funciona parcialmente. La bitácora tiene vacíos importantes (ej: no hay bocetos, o no hay mapa de decisiones, o faltan actividades del Seek).La pieza no corre o no demuestra los conceptos requeridos. La bitácora no permite verificar el proceso.No se entregaron evidencias o no se puede acceder a ellas
Evaluación
2. Sustentación (60%)Responde con precisión conectando: (a) qué se ve en la pieza, (b) cómo está hecho (estructura del código), y (c) por qué tomó esas decisiones de diseño. Explica la separación de capas. Puede describir cómo trasladaría los conceptos a otra herramienta. Justifica decisiones narrativas/emocionales.Respuestas correctas pero con imprecisiones menores. Explica el “qué” y el “cómo” pero la justificación del “por qué” es superficial. La transferencia a otras herramientas es genérica.Responde “qué hizo” pero le cuesta explicar “cómo” o “por qué”. No distingue claramente entre las capas del sistema. Necesita guía para conectar decisiones de diseño con el concepto.No logra responder coherentemente. No distingue entre partícula, sistema y visualización. No puede explicar las decisiones de diseño de su propia pieza.No se entregaron evidencias o no se puede acceder a ellas
Evaluación


Set: ¿Qué aprenderás en esta unidad? 💡

Sección titulada «Set: ¿Qué aprenderás en esta unidad? 💡»

En esta unidad comprenderás qué es un sistema de partículas como modelo computacional y cómo sus principios se transfieren a cualquier herramienta profesional.

Específicamente aprenderás:

  • Qué es una partícula como entidad con estado y ciclo de vida.
  • Qué es un emisor como abstracción que gestiona colecciones dinámicas.
  • Cómo las fuerzas, la herencia y el polimorfismo enriquecen el sistema.
  • Cómo separar comportamiento, estructura y visualización como capas independientes.
  • Que estos principios son transferibles a TouchDesigner, Unity, Blender u otra herramienta profesional.

Los sistemas de partículas se ejecutan en tiempo real con la CPU procesando cada entidad en cada frame. La gestión de memoria, cuándo crear y cuándo eliminar partículas, no es un detalle técnico menor: es parte central del modelo. Un sistema que nunca elimina partículas muertas degrada el rendimiento hasta hacer inusable la aplicación.

Vas a analizar cuatro actividades que cubren cinco ejemplos del capítulo de partículas del texto guía (4.2, 4.4, 4.5, 4.6 y 4.7). En lugar de estudiarlos de forma aislada, los compararás entre sí para identificar qué cambia y qué se mantiene a medida que el modelo crece en complejidad.

Actividad 01: Anatomía de una partícula (Example 4.2: An Array of Particles)

Sección titulada «Actividad 01: Anatomía de una partícula (Example 4.2: An Array of Particles)»

Estudia el Example 4.2: An Array of Particles.

Actividad 02: Del array al sistema: la abstracción del emisor (Example 4.4: A System of Systems)

Sección titulada «Actividad 02: Del array al sistema: la abstracción del emisor (Example 4.4: A System of Systems)»

Estudia el Example 4.4: A System of Systems.

Actividad 03: Heterogeneidad: herencia y polimorfismo (Example 4.5)

Sección titulada «Actividad 03: Heterogeneidad: herencia y polimorfismo (Example 4.5)»

Estudia el Example 4.5: A Particle System with Inheritance and Polymorphism.

Actividad 04: Fuerzas y partículas (Examples 4.6 y 4.7)

Sección titulada «Actividad 04: Fuerzas y partículas (Examples 4.6 y 4.7)»

Estudia los dos ejemplos siguientes:

Actividad 05: Ejercicio de diseño “Ciclos de vida”

Sección titulada «Actividad 05: Ejercicio de diseño “Ciclos de vida”»

Diseña e implementa una pieza interactiva en p5.js que use un sistema de partículas para representar un ciclo de vida de tu elección.

Un ciclo de vida es cualquier proceso donde algo nace, se transforma y desaparece. Puede ser literal (semillas → flores → pétalos que caen), metafórico (ideas → conversaciones → olvido), emocional (calma → agitación → disolución), natural (estrellas → supernovas → polvo cósmico), o social (rumores que se propagan, se fragmentan y mueren).

Requisitos conceptuales del sistema:

  1. Al menos dos tipos de partículas con comportamientos distintos (herencia y polimorfismo).
  2. Ciclo de vida visible: las partículas deben nacer, transformarse visualmente durante su vida, y morir. La muerte no puede ser solo “desaparecer”: debe comunicar algo.
  3. Al menos una fuerza que afecte a las partículas (gravedad, atracción, repulsión, viento, u otra).
  4. La interacción del usuario debe tener un propósito narrativo claro: no es “hacer click para emitir más partículas”, sino que la interacción debe tener un significado dentro del ciclo de vida que elegiste.
  5. Gestión correcta de memoria: las partículas muertas se eliminan.

Reflect: Consolidación y metacognición 🤔

Sección titulada «Reflect: Consolidación y metacognición 🤔»