{"id":6210,"date":"2026-10-23T13:24:05","date_gmt":"2026-10-23T17:24:05","guid":{"rendered":"https:\/\/dems.asc.ohio-state.edu\/?p=6210"},"modified":"2026-10-23T13:24:05","modified_gmt":"2026-10-23T17:24:05","slug":"pressure-project-2-a-mystery-is-revealed","status":"publish","type":"post","link":"https:\/\/dems.asc.ohio-state.edu\/?p=6210","title":{"rendered":"Pressure Project 2 &#8211; A Mystery is Revealed"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">My original intention in creating this project was to develop an interactive visual experience that allows users to control flames with their hands. I drew inspiration from K\/DA\u2019s new song \u201cFirestarter,\u201d particularly the song\u2019s energetic vibe and its flame-related visual effects. I wanted to create a sensation of manipulating flames or magical energy\u2014not through a keyboard or mouse, but by interacting directly with hand gestures.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"K\/DA - FIRESTARTER ft. MIYEON and SOYEON of i-dle, Sophie Powers, Mimi Webb (Official Music Video)\" width=\"590\" height=\"332\" src=\"https:\/\/www.youtube.com\/embed\/Mmw-PpWhKFg?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">I first used MediaPipe to track the position of my hands via the camera, then wrote Python code in a Script CHOP to recognize different gestures. For example, making a fist makes the flames disappear, and clapping changes the color of the flames. I also designed a new gesture: when one hand is raised and the other is lowered, the flame transforms into a fireball. I used the Sphere SOP and Switch SOP to change the shape of the flame emitter, and then used the Transform SOP to make the fireball follow the position between my hands. At first, the fireball\u2019s movement was very erratic, so I later added a Lag CHOP to smooth out the tracking data.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"586\" src=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/cbff01d96b05014466025c65cea74ab2-1024x586.png\" alt=\"\" class=\"wp-image-6246\" srcset=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/cbff01d96b05014466025c65cea74ab2-1024x586.png 1024w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/cbff01d96b05014466025c65cea74ab2-300x172.png 300w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/cbff01d96b05014466025c65cea74ab2-767x439.png 767w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/cbff01d96b05014466025c65cea74ab2.png 1305w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The flame itself was created using NVIDIA Flow. I adjusted parameters such as speed, smoke, temperature, and fuel in the NV Flow Emitter to achieve the effect I was looking for. I also used the HSV Adjust TOP to change the flame\u2019s color. Rather than a completely realistic flame, I wanted it to have a colorful, energetic visual effect, since my inspiration came from musical performances.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"583\" src=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/445856693ed0a4a6fa17af5cadefa0b2-1024x583.png\" alt=\"\" class=\"wp-image-6247\" srcset=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/445856693ed0a4a6fa17af5cadefa0b2-1024x583.png 1024w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/445856693ed0a4a6fa17af5cadefa0b2-300x171.png 300w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/445856693ed0a4a6fa17af5cadefa0b2-768x437.png 768w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/445856693ed0a4a6fa17af5cadefa0b2.png 1481w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Another part of the project was creating a transformation effect. When the user holds both hands open for five seconds, a countdown starts, and the screen eventually changes into a thermal-camera-style view. I used Timer CHOP to control the timing and Python to make sure the interaction only triggers once. For the thermal effect, I combined Monochrome TOP, Lookup TOP, Ramp TOP, and Edge TOP, and used Switch TOP to change between the regular camera view and the thermal visualization. I also added music and fire sound effects using Audio File In CHOP and Audio Device Out CHOP.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"550\" data-id=\"6252\" src=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/e0d8363b3786d1040dae40518fa75a7c-2-1024x550.png\" alt=\"\" class=\"wp-image-6252\" srcset=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/e0d8363b3786d1040dae40518fa75a7c-2-1024x550.png 1024w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/e0d8363b3786d1040dae40518fa75a7c-2-300x161.png 300w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/e0d8363b3786d1040dae40518fa75a7c-2-767x412.png 767w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/e0d8363b3786d1040dae40518fa75a7c-2-1536x826.png 1536w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/e0d8363b3786d1040dae40518fa75a7c-2.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1025\" height=\"507\" data-id=\"6253\" src=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/9277f491a929f4d5d6fcd4304ae7799c-2.png\" alt=\"\" class=\"wp-image-6253\" srcset=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/9277f491a929f4d5d6fcd4304ae7799c-2.png 1025w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/9277f491a929f4d5d6fcd4304ae7799c-2-300x148.png 300w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/10\/9277f491a929f4d5d6fcd4304ae7799c-2-766x379.png 766w\" sizes=\"auto, (max-width: 1025px) 100vw, 1025px\" \/><\/figure>\n<\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">One of the biggest challenges was getting all the gestures to work consistently. Sometimes MediaPipe would incorrectly detect a hand movement, which caused the timers to restart or the fireball to jump around. I spent quite a lot of time adjusting the Python code and the tracking settings to make everything work together.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Overall, I had a lot of fun experimenting with this project. I especially liked seeing how a simple hand movement could create such a dramatic visual change. This project helped me understand how different TouchDesigner operators can work together to create an interactive experience, and it made me want to explore more gesture-based interactions in the future.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Project 2: Gesture-Driven Visualization - FIRESTARTER\" width=\"590\" height=\"332\" src=\"https:\/\/www.youtube.com\/embed\/Tc5Xj1226oI?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>My original intention in creating this project was to develop an interactive visual experience that allows users to control flames with their hands. I drew inspiration from K\/DA\u2019s new song \u201cFirestarter,\u201d particularly the song\u2019s energetic vibe and its flame-related visual effects. I wanted to create a sensation of manipulating flames or magical energy\u2014not through a [&hellip;]<\/p>\n","protected":false},"author":138,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-6210","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=\/wp\/v2\/posts\/6210","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=\/wp\/v2\/users\/138"}],"replies":[{"embeddable":true,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6210"}],"version-history":[{"count":2,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=\/wp\/v2\/posts\/6210\/revisions"}],"predecessor-version":[{"id":6254,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=\/wp\/v2\/posts\/6210\/revisions\/6254"}],"wp:attachment":[{"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6210"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=6210"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=6210"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}