Projects Preview

Click click click to the presentation.


Before coming to ITP, I was never a person who makes things or codes. I grew up pursuing high grades, good college, and proper stable jobs, and kept my fantasy and daydreaming well within leisure time and doodling. After graduated, I’d worked as macro economic analyst for 2 years, forecasting “far to reach” numbers in the market manipulated by many big hands, and I gradually became numb and the job became just task. Thus I decided to change the life path when I still can, and desire to do something that will only end good if you pay enough efforts in it. Something is not made by talking but made by hand. Learning 3D animation was my first step, and then I was in ITP.


Reviewed my past projects, I concluded myself a graphic person who want to do physical stuff. In the coding worlds, everything is so perfect, yet in the real world, everything is so against my will. I don’t know why I kept challenge myself with to do physical stuff even I know I’ll spend extra time on fabrication than other people. The connections of physical & physical, physical & graphics just fascinate me.

Overall, the projects can roughly summarized as

  • animated
  • fantasy realization
  • lighthearted
  • trying to be weird
  • hoping to be provoking
  • and most of them were out of self desire.

I’ve been focus on web based 3D graphic using Three.js since Spring 14′, and extended to virtual reality exploration. In Fall 14′, I fell in love with gears and kinetic movement, with blood and tears, because of Automata class.


Thus(?) for my thesis, I’m interested in

  • Daydreams / doodles realization
  • Mask / helmet / thing that hides face: transform myself, communicate with the world as another identification
  • VR: experience the impossibility, challenge with contradiction and illusion, combine with audio and physical feedback
  • Chain reactions: both physical computing and analog (e.g. automata); to connect virtual with reality, experience virtual in reality, to make reality in virtual


ICM Final– Glitchtchtchitch.

Manipulation and surveillance visualization.

Featured in ITP Winter Show 2013(See all the pics!).

Glitchtchtchitch is a live interactive installation showing multiple short-lived fault in a system. By bringing out the imperfection of technology with massive pixels manipulation, sound distortion, and multiple screens display, Glitchtchtchitch visualize the transient fault and the incapability of communication. Although mainly sending serious messages, with the effect of headless illusions, heads displacement, and delay, it leaves audience undergoing an experience without too much pressure.

Glitchtchtchitch is presented by running more than 10 Processing sketches at the same time, and using 2-3 projectors to increase the amount of screen, the variety, and increase the level of distortion.


Main idea –>  In order to cubify heads, instead of just altering pixels, I made an object “Cube” to get, restore, alter, and display the pixels of specific range. Also to achieve the headless effect, besides the library OpenCV, I took a background image beforehand, and display its pixels within certain ranges, once detecting a face. ALL THE SOURCE CODES



  • Speed issue has room for improvement.
  • Different scale presentation style(projectors included) looks nice.
  • From user test and presentation feedback, people love headless and delay effect the most. Because they’re the most bizarre, unrealistic, and uncommon visual impact.

Problems with solutions

  • OutOfBounds —> constrain(xxx, 0, numPixels-1)
  • flip horizontal —> video.width-fx-1
  • can’t cover image with pixels[ ] —> solved by using pixels for both
  • improve the sketch speed —> P2D, PFrame,
  • connect to webcam? PS eye? —> camera list, example


  • scale PImage
  • Minim noise
  • hide menu

Original proposal –> Here.




Magic Ball w/ "Go" button.

Magic Ball w/ “Go” button.

In the first class of Introducing Physical Computation of Tom Igoe, for our first assignment– “fantasy devices”, Aaron and I came out of the idea of a food replicator!


  • At first, let’s skip the process of food come out from nowhere!
  • It’s a fabricate kit. With 12 expandable sticks as frames, and 8 magic balls as joints, users can put the food replicator easily into a sack, and assemble it freely into the size they want.
  • After setting up, users can use smartphone to order food products from the on-line catalog. Choose items, put in the cart, and pay the bill.
  • Once finishing the on-line order, users push the “GO” button to execute the processing. Food will suspend until users touch/grab it.
  • Beside “output” food, users can “input” too! By putting food(granny’s jam etc.) inside of the food replicator, items can be easily uploaded and preserved to the on-line catalog(but watch up the expiration date!).


  • 8 balls are responsible for all of the technology.
  • The control interface is simple with a “Go” button on the surface of the ball. Users push the button both to get and upload food.
  • Although only one item can be uploaded a time, multiple items can be replicated since, quote Aaron “…, the replicator will optimize the cube space to materialize as many of the items from the “cart” as is possible.”


  • How to define “food”? Since we don’t want to make this involve with controversial stuff like money, drugs, etc., we limit the output to be just food. Although we can find the definition of food on wiki–

Food is any substance consumed to provide nutritional support for the body. It is usually of plant or animal origin, and contains essential nutrients, such as carbohydrates, fats, proteins, vitamins, or minerals. The substance is ingested by anorganism and assimilated by the organism’s cells in an effort to produce energy, maintain life, or stimulate growth.”  

  • … still, it’s hard to execute.