More selected projects

                                       Cough, No Free                                       


Cough, No Free is a voice-controlled interactive projection

based on a series of 2D pixel illustrations

produced by: Mengdi Li


Intimate partner violence, the gendered division of labour, bias from racism, apart from the physical damage people suffered, the mental pressure is also disproportionately affecting each person during this pandemic period. Cough, No Free is an interactive voice-controlled project to demonstrate the current social situation and release the participant from the serious and depressing atmosphere using pixel art illustrations.


I got the inspiration from Denis Perevalov’s book Mastering openFrameworks Chapter 8 - Using Shaders. This chapter is talking about using shader to unleash the computation power of GPUs, which makes the program run smoothly and creates more competitive and astonishing projects. Then I decided to use 2D illustrations as the changing scenes to narrative a small story during the quarantine. Pixel Art is chosen to represent this virtual world with square glitch. An orange butterfly shows up at the beginning when participants grab the yellow object and show it to the webcam. When they wave their hands, the butterfly will follow their gesture with a generating square track and wandering in the scenes. The changing of scenes is controlled by voice controller. When participants say LALALA to the computer, the butterfly could go outside happily. Once they cough, the system will directly put her back to home which is a home with endless wall, and the butterfly cannot fly over it. Cough sound has already trained at the beginning of the project by using week 17 Machine Learning – ofxVoiceController as the reference to shift story scene. At the beginning, I want to measure a specific area(like a button) to change the scenes when butterfly pass there. However during I am using shaders and ofMap function, the boundary of the butterfly and the scene became hard to calculate which stuck me really long time with no result, and that is why I introduce voice as another way to change the scene.




The happiest part for me is that finally, I could combine my illustrations with my computational project with a simple linear narrative. And I found I was really fancy with improving each part of the project. However, due to the limitation of time, I can not make the scene as a video which is a little depressed for me. For further development, I need to improve this and also adjust the voice part like arranging more playtests to debug accuracy.



  • gallery-image
  • gallery-image
  • gallery-image
  • gallery-image


CFFP CentreForFeministForReignPolicy.

Daniel Perevalov. "Mastering openFrameworks: Creative Coding Demystified"(2013),%20Chris_compressed.pdf

WCC - Week 17 - Machine Learning - ofxVoiceController