LuminSkin

LuminSkin is a multi layered responsive skin with parametric openings, and glass opacity control which responds to sunlight exposure.

Challenge

The idea was to create a facade that doesn’t stay static but breathes with its environment. A facade that actively regulates light and view with discrete panels that open and close, glass shift its transparency as the sunlight hits the surface. The shading panels can also change their shape based on user inputs and the structure would need a system to hold the dense layering together. The program needs to be developed as a fully built one unit single control system giving designer adjacency to make changes.

Process

Design rule: The base façade input must be a single, continuous surface with a consistent UV and any discontinuities break panel mapping. The attractor point must sit within the bounding box of the facade. Maintaining spacing so shading panels don’t intersect each other. Panel and curtain wall logic will be separate entities but connected by shared parameters.

Matrix

  1. double facade system: shading panels in front, glass with spider joints behind.
  2. Layers will be separate entities, following same logic and connected through shared parameters.
  3. Panels need to open and close parametrically, not just rotate randomly.
  4. Glass opacity had to be tied to the same attractor logic as the panels.
  5. Curtain wall logic (frames, joints, divisions) had to stay buildable.
  6. Rules for min/max panel size and spacing to avoid clashes.

Features

  1. Attractor-driven behavior: every panel reacts to sun position.
  2. Glass and panels sync: openness and transparency linked, so one system.
  3. Scalable grid: works on any surface subdivision.
  4. Opacity gradients: facade can shift between clear, tinted, and opaque states.
  5. Local overrides: panels/zones can be locked in fixed states if needed.

Early sprints focused on stable panel behavior (open/close without collisions), then layered in attractor mapping, then joint/rail structure, and finally glass opacity coupling. Each iteration added one rule, validated extremes, and kept defaults safe. This flow reflects incremental logic added over multiple iterations.

System breakdown:

The system was built in layers of logic. First I tested panel opening and closing, then mapped it to an attractor, and only after that did I bring in the secondary curtain wall and glass opacity. Each sprint added one rule, checked for stability, and then stacked on the next. The flow reflects incremental logic through step-by-step iterations until all the layers synced.

Grasshopper Script

Solution

  • Generates a truss system along any pair of rail paths (straight, curved, or irregular).
  • Outputs primary, secondary, and tertiary structural members with cross-section control.
  • Responsive joint system adapts when attractor or path shifts.
  • Export-ready Grasshopper model with metadata for downstream simulation/fabrication.

Impact

  1. The facade adapts in real time to glare and daylight shifts, turning the building into a dynamic skin instead of a static wall. Because the logic is layered, the system can adapt to new conditions whether that’s different sun paths, panel libraries, or fabrication rules without rewriting the geometry from scratch.
  2. Flexibility in testing shape easily.
  3. Can be scaled from small curtain wall bays to bigger enevlopes.
  4. The attractor logic could extend into other materials or AR systems.

Key Tech Stack