{"id":5890,"date":"2026-05-07T03:47:42","date_gmt":"2026-05-07T07:47:42","guid":{"rendered":"https:\/\/dems.asc.ohio-state.edu\/?p=5890"},"modified":"2026-05-07T05:57:16","modified_gmt":"2026-05-07T09:57:16","slug":"pressure-project-1-24","status":"publish","type":"post","link":"https:\/\/dems.asc.ohio-state.edu\/?p=5890","title":{"rendered":"Pressure Project 1"},"content":{"rendered":"\n<p>Required Resources<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Isadora<\/li>\n\n\n\n<li>Shapes Actor<\/li>\n\n\n\n<li>Projector Actor<\/li>\n\n\n\n<li>User Actor<\/li>\n\n\n\n<li>Pulse Generator<\/li>\n\n\n\n<li>Wave Generator<\/li>\n\n\n\n<li>Random Number Generator<\/li>\n\n\n\n<li>Jump ++ Actor<\/li>\n\n\n\n<li>Scene Functionality<\/li>\n\n\n\n<li>5 hours<\/li>\n<\/ul>\n\n\n\n<p>My goal for pressure project 1 was to build a self generating patch that enabled users to play the original Mario Bros. with their body. I thought that I would be able to accomplish this using a version of Mario instantiated in Python for machine learning. This was an ambitious goal but I thought it would be possible to do it within the five hour window. If it proved to be impossible I knew that I could simplify it to achieve a reasonable outcome. I spent one hour setting up the patch, a total I spent 3 hours trying to get Mario running: Two hours trying to get a basic Python script to run in Isadora and one hour running it directly on my laptop with Isadora sending keystrokes to control the game running in python. Neither of these approaches was successful. <\/p>\n\n\n\n<p>I spent the final hour crafting a new experience that borrowed from my initial concept. <\/p>\n\n\n\n<p>Score<\/p>\n\n\n\n<p>The user stands facing a camera. A message on screen informs them that a vitals scan is in progress and instructs them to move their body. <\/p>\n\n\n\n<p>Blue shapes moves up and down the screen while a TT Edge Detect actor outlines their body, simulating a poor man&#8217;s retro body scan. When a blob decoder reports object velocity between 0.1 and 2, the Inside range actor fires a trigger. The trigger travels through a simultaneity actor and if a wave generator connected to an inside range actor is less than 10 or greater than 90, it will fire a trigger to activate a text actor, informing the user of success. It will also fire a trigger (delayed 5 seconds) to activate a jump++ actor and move on to the introduction screen. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"639\" src=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/image-1024x639.png\" alt=\"\" class=\"wp-image-5891\" srcset=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/image-1024x639.png 1024w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/image-300x187.png 300w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/image-768x479.png 768w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/image-1536x959.png 1536w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/image-2048x1279.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>The user is informed that the vitals check was successful. and they will now betrayed.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"578\" src=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/Screenshot-2026-05-07-at-2.02.10-AM.png\" alt=\"\" class=\"wp-image-5892\" srcset=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/Screenshot-2026-05-07-at-2.02.10-AM.png 960w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/Screenshot-2026-05-07-at-2.02.10-AM-300x181.png 300w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/Screenshot-2026-05-07-at-2.02.10-AM-768x462.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/figure>\n\n\n\n<p>The screen goes black and you hear the iconic:<\/p>\n\n\n\n<figure class=\"wp-block-audio\"><audio controls src=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/sm64_mario_lets_go.mp3\"><\/audio><\/figure>\n\n\n\n<p>I then added a video of the first level of Mario. After a few seconds, before the player has a chance to recognize that they&#8217;re not actually controlling the game, the system begins to warp and distort the game video by sending the stage image through a feedback loop (this was going to make a very ironic re-emergence later in the semester). A message onscreen onscreen progressively unfolds to inform the user &#8220;Oh no. You broke it. Shame on you&#8221; the line &#8220;shame all over you&#8221; appears on screen and its position is periodically moved by random number generators hooked up to the position.<\/p>\n\n\n\n<p>In total the experience contains five scenes that progress automatically upon fulfilled success criteria.<\/p>\n\n\n\n<p>It contains three user actors. Two are nested in the control scene and define how the system is supposed to track user movement and convert them into controls for playing the Mario game.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"700\" src=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/Screenshot-2026-05-07-at-3.40.17-AM-1024x700.png\" alt=\"\" class=\"wp-image-5894\" srcset=\"https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/Screenshot-2026-05-07-at-3.40.17-AM-1024x700.png 1024w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/Screenshot-2026-05-07-at-3.40.17-AM-300x205.png 300w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/Screenshot-2026-05-07-at-3.40.17-AM-768x525.png 768w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/Screenshot-2026-05-07-at-3.40.17-AM-1536x1050.png 1536w, https:\/\/dems.asc.ohio-state.edu\/wp-content\/uploads\/2026\/05\/Screenshot-2026-05-07-at-3.40.17-AM.png 1548w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>The other defines how text is drawn up on the screen.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><span style=\"text-decoration: underline;\">Valuation<\/span><\/p>\n\n\n\n<p>I was unable to give the user control over Mario Bros. Instead I simplified the experience and fell back on an old favorite theme of mine, playing with the idea of technology failures as part of an immersive experience. I&#8217;m prone to stress when I can&#8217;t make a project do what I want it to do. In my first time taking DEMS, my first pressure project broke down and the experience was embarrassing. It was in my second project that I started working with simulated failures as an emotional trigger point. <\/p>\n\n\n\n<p><span style=\"text-decoration: underline;\">Performance<\/span><\/p>\n\n\n\n<p>The patch worked as expected and it was fine. Obviously a bit gimmicky. It was an important step though, because it had been a year and a half since I&#8217;d used Isadora and several months since I&#8217;d worked with TouchDesigner. The first pressure project was a nice reacquaintance with the software. <\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Required Resources My goal for pressure project 1 was to build a self generating patch that enabled users to play the original Mario Bros. with their body. I thought that I would be able to accomplish this using a version of Mario instantiated in Python for machine learning. This was an ambitious goal but I [&hellip;]<\/p>\n","protected":false},"author":105,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-5890","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\/5890","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\/105"}],"replies":[{"embeddable":true,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5890"}],"version-history":[{"count":3,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=\/wp\/v2\/posts\/5890\/revisions"}],"predecessor-version":[{"id":5921,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=\/wp\/v2\/posts\/5890\/revisions\/5921"}],"wp:attachment":[{"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5890"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5890"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dems.asc.ohio-state.edu\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5890"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}