{"id":1,"date":"2026-01-16T14:00:00","date_gmt":"2026-01-16T14:00:00","guid":{"rendered":"https:\/\/projects.etc.cmu.edu\/torchbearer\/?p=1"},"modified":"2026-02-16T14:03:48","modified_gmt":"2026-02-16T19:03:48","slug":"hello-world","status":"publish","type":"post","link":"https:\/\/projects.etc.cmu.edu\/torchbearer\/hello-world\/","title":{"rendered":"Week 1 &#8211; Jan. 16: Entering the CAVERN"},"content":{"rendered":"\n<h3 class=\"wp-block-heading has-text-align-center\">And so I held my torch up high, <br>to cut a path through the darkness&#8230;<\/h3>\n\n\n\n<div style=\"height:45px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<p class=\"has-text-align-center\">It&#8217;s the beginning of a new semester! <\/p>\n\n\n\n<p class=\"has-text-align-center\">We are <strong>Team Torchbearer!<\/strong> This week, as with most ETC projects&#8217; first weeks, is all about setup! <\/p>\n\n\n\n<p class=\"has-text-align-center\">But first, what exactly are we doing here?<\/p>\n\n\n\n<div style=\"height:24px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading has-text-align-center\">The CAVERN<\/h4>\n\n\n\n<p>The CAVERN has been a fixture of the <a href=\"http:\/\/etc.cmu.edu\">ETC<\/a> for many years now. It was built here, and is unique to our building. Many past teams have created films and games for it.<\/p>\n\n\n\n<p>CAVERN stands for &#8220;Cave Automatic Virtual Environment Round&#8221;. It&#8217;s a type of CAVE system that is unique in that instead of having harsh angles at the walls of a box, it&#8217;s&#8230; well, round!<\/p>\n\n\n\n<p>A CAVE system is method of VR that involves the use of projectors on the walls of a space to create a VR environment that doesn&#8217;t require the user to wear a headset. <\/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=\"684\" data-id=\"235\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/igloo-cave-1024x684.jpeg\" alt=\"\" class=\"wp-image-235\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/igloo-cave-1024x684.jpeg 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/igloo-cave-300x200.jpeg 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/igloo-cave-768x513.jpeg 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/igloo-cave-1536x1026.jpeg 1536w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/igloo-cave.jpeg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Standard &#8220;Cube&#8221; CAVE<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"600\" data-id=\"236\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/CAVERN_wide_view-1.jpg\" alt=\"\" class=\"wp-image-236\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/CAVERN_wide_view-1.jpg 800w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/CAVERN_wide_view-1-300x225.jpg 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/CAVERN_wide_view-1-768x576.jpg 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">The round CAVERN<\/figcaption><\/figure>\n<\/figure>\n\n\n\n<p>The CAVERN uses stereoscopic 3D projection and glasses along with headtracking to create a 3D effect. Objects can appear to exist <em>into<\/em> the CAVERN, or they can appear to be <em>inside<\/em> the space the players are standing in. The result is a uniquely immersive space. Player&#8217;s can move around the virtual world as it surrounds them in the CAVERN, and unlike with traditional headset VR, they can look at and directly interact with each other, without needing virtual avatars.<\/p>\n\n\n\n<div style=\"height:38px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading has-text-align-center\">Steve Audia&#8217;s Dream\/Our Challenge<\/h4>\n\n\n\n<p>When Steve Audia, the ETC&#8217;s director of IT, had the idea for the CAVERN, it was primarily intended to be used for <em>multiplayer<\/em> VR games. Afterall, its unique affordance is that two players can <em>physically<\/em> look at each other.<br>However, there is an issue with that, and it comes in two parts:<\/p>\n\n\n\n<p><strong>First<\/strong>, in order to convincingly create a 3d effect, the image rendered by the CAVERN needs to &#8220;skew&#8221; itself to match the perspective of the viewer. This means that for anyone that is <em>not<\/em> the &#8220;chosen perspective&#8221; of 3D in the CAVERN, the image appears distorted and &#8220;off&#8221;. This effect gets more pronounced the &#8220;closer&#8221; the object is to the viewer. For objects that we want to appear far off in the distance, this is barely noticeable. For anything we want to appear <em>inside<\/em> the CAVERN, this effect completely breaks the illusion of 3d for anyone that isn&#8217;t the main player.<\/p>\n\n\n\n<p><strong>Second<\/strong>, currently the CAVERN Toolkit, developed in a previous semester by the team <a href=\"https:\/\/projects.etc.cmu.edu\/spelunx\/\">Spelunx<\/a>, only head-tracks one player. The head-tracked player is the one whose perspective is used for the aforementioned &#8220;skew&#8221; needed to create the 3d effect. Even if we simply added a tracker to another player, who would we use as our reference perspective for the world?<\/p>\n\n\n\n<p class=\"has-text-align-center\">Enter, Multi-Perspective Rendering<\/p>\n\n\n\n<p>Over this last summer, Steve came up with a potential way to solve these issues. The idea essentially boils down to this: Treat every object that is &#8220;outside&#8221; of the CAVERN walls as if the players are standing directly in the center of the CAVERN. Because those objects are more distant, the distortion isn&#8217;t very noticeable. Then, track every player, and render every object &#8220;inside&#8221; the CAVERN multiple times &#8211; once per player. This way, every player gets their own perspective, and they gain the ability to walk around, or encircle a virtual object, and see the correct side of it from their position.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-2 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=\"472\" data-id=\"161\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-1024x472.png\" alt=\"\" class=\"wp-image-161\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-1024x472.png 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-300x138.png 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-768x354.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-1536x707.png 1536w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image.png 2000w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Frank&#8217;s POV<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"472\" data-id=\"164\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-2-1024x472.png\" alt=\"\" class=\"wp-image-164\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-2-1024x472.png 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-2-300x138.png 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-2-768x354.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-2-1536x707.png 1536w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-2.png 2000w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Object in between the players<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"472\" data-id=\"163\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-1-1024x472.png\" alt=\"\" class=\"wp-image-163\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-1-1024x472.png 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-1-300x138.png 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-1-768x354.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-1-1536x707.png 1536w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-1.png 2000w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Jason&#8217;s POV<\/figcaption><\/figure>\n<\/figure>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1007\" data-id=\"258\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Outside-1024x1007.png\" alt=\"\" class=\"wp-image-258\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Outside-1024x1007.png 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Outside-300x295.png 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Outside-768x755.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Outside.png 1245w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Object &#8220;outside&#8221; CAVERN, unaffected by player positions<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"1397\" height=\"1279\" data-id=\"257\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Inside.png\" alt=\"\" class=\"wp-image-257\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Inside.png 1397w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Inside-300x275.png 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Inside-1024x938.png 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Inside-768x703.png 768w\" sizes=\"auto, (max-width: 1397px) 100vw, 1397px\" \/><figcaption class=\"wp-element-caption\">Object &#8220;inside&#8221; the CAVERN, rendered once for each player<\/figcaption><\/figure>\n<\/figure>\n\n\n\n<p>This solves the multiplayer perspective issue, but has a lot of unanswered questions. The CAVERN is unable to separate what individual players see, so if one player is looking in the same direction as another, they would both see <em>each other&#8217;s<\/em> version of the object. It would appear doubled!<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-4 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=\"938\" data-id=\"257\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Inside-1024x938.png\" alt=\"\" class=\"wp-image-257\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Inside-1024x938.png 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Inside-300x275.png 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Inside-768x703.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Inside.png 1397w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">In this position, the player&#8217;s would be able to see &#8220;each other&#8217;s&#8221; cube<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1013\" data-id=\"256\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Ideal1-1024x1013.png\" alt=\"\" class=\"wp-image-256\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Ideal1-1024x1013.png 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Ideal1-300x297.png 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Ideal1-768x760.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Ideal1.png 1339w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">In this position, they would not<\/figcaption><\/figure>\n<\/figure>\n\n\n\n<p>Also, because objects are projected onto the CAVERN screen to appear 3D, even if they should be <em>in front<\/em> of both players, it&#8217;s entirely possible for the players to block each other&#8217;s views of the object anyways, if they are standing in the right positions.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"983\" height=\"1024\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Blocking-983x1024.png\" alt=\"\" class=\"wp-image-254\" style=\"aspect-ratio:0.9599603265430686;width:484px;height:auto\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Blocking-983x1024.png 983w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Blocking-288x300.png 288w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Blocking-768x800.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Blocking.png 1290w\" sizes=\"auto, (max-width: 983px) 100vw, 983px\" \/><figcaption class=\"wp-element-caption\">Two players blocking the cube from each other&#8217;s view<\/figcaption><\/figure>\n\n\n\n<p>There are also a variety of other unknowns. How do we render the same object multiple times using Spelunx&#8217;s existing system? Will there be any performance issues? Will the 3D effect be strong enough to use &#8220;moving&#8221; objects? Will the distortion on other player&#8217;s objects be distracting? How would we handle overlaps in the rendering? How do we separate the &#8220;interior&#8221; objects from the &#8220;exterior&#8221; objects? And so on and so on&#8230;<\/p>\n\n\n\n<p class=\"has-text-align-center\" style=\"font-size:clamp(1.092rem, 1.092rem + ((1vw - 0.2rem) * 1.105), 1.7rem);\"><strong>It is with this idea and this pile of problems and unknowns that we begin our semester!<\/strong><\/p>\n\n\n\n<h4 class=\"wp-block-heading has-text-align-center\">Enter, Team Torchbearer!<\/h4>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-3-1024x768.png\" alt=\"\" class=\"wp-image-166\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-3-1024x768.png 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-3-300x225.png 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-3-768x576.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-3-1536x1152.png 1536w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-3-2048x1536.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>From back to front:<br><strong>Henry Wang<\/strong>, our gameplay programmer,<br><strong>Frank Lin<\/strong>, co-producer and 3D Artist,<br><strong>Jason Jiang<\/strong>, our graphics programmer,<br><strong>Ivy Hu<\/strong>, our second 3D Artist,<br><strong>Jos\u00e9 Francisco Mireles Macario<\/strong>, our game designer,<br>and finally, <br><strong>Michael Wong<\/strong>, our sound designer, composer, and other producer (this is me)<\/p>\n\n\n\n<p class=\"has-text-align-center\">This week, we established our team&#8217;s identity (that&#8217;s our name, Torchbearer), met with our advisors <br>Drew Davidson and Steve Audia for the first time, tried out the CAVERN, and created a simple test scene of the <em>single player<\/em> version of 3D<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-4 is-cropped wp-block-gallery-5 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=\"768\" data-id=\"167\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-4-1024x768.png\" alt=\"\" class=\"wp-image-167\" style=\"aspect-ratio:1\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-4-1024x768.png 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-4-300x225.png 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-4-768x576.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-4-1536x1152.png 1536w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-4-2048x1536.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Drew Davidson<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" data-id=\"169\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-6-1024x576.png\" alt=\"\" class=\"wp-image-169\" style=\"aspect-ratio:1\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-6-1024x576.png 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-6-300x169.png 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-6-768x432.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-6-1536x864.png 1536w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-6-2048x1152.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">The team in front of our composition box<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"576\" height=\"1024\" data-id=\"168\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-5-576x1024.png\" alt=\"\" class=\"wp-image-168\" style=\"aspect-ratio:1\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-5-576x1024.png 576w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-5-169x300.png 169w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-5-768x1365.png 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-5-864x1536.png 864w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-5-1152x2048.png 1152w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/image-5-scaled.png 1440w\" sizes=\"auto, (max-width: 576px) 100vw, 576px\" \/><figcaption class=\"wp-element-caption\">Our composition box<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"157\" src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/02\/IMG_9489-1024x768.jpeg\" alt=\"\" class=\"wp-image-157\" style=\"aspect-ratio:1\" srcset=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/02\/IMG_9489-1024x768.jpeg 1024w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/02\/IMG_9489-300x225.jpeg 300w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/02\/IMG_9489-768x576.jpeg 768w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/02\/IMG_9489-1536x1152.jpeg 1536w, https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/02\/IMG_9489-2048x1536.jpeg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Meeting with Drew from the team&#8217;s perspective<\/figcaption><\/figure>\n<\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-group is-style-default is-layout-grid wp-container-core-group-is-layout-29271053 wp-block-group-is-layout-grid\">\n<figure class=\"wp-block-video wp-container-content-b4c5012d\"><video height=\"480\" style=\"aspect-ratio: 854 \/ 480;\" width=\"854\" controls src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/IMG_9449.mov\"><\/video><figcaption class=\"wp-element-caption\">Trying out the CAVERN<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-video wp-container-content-b4c5012d\"><video height=\"480\" style=\"aspect-ratio: 854 \/ 480;\" width=\"854\" controls src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/Demo1.mov\"><\/video><figcaption class=\"wp-element-caption\"><strong>Jos\u00e9<\/strong> showing us his last semester CAVERN project, <strong><a href=\"https:\/\/projects.etc.cmu.edu\/270-degree-fun\/\">270\u00b0 Fun<\/a><\/strong><\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-video wp-container-content-b4c5012d\"><video height=\"1080\" style=\"aspect-ratio: 1920 \/ 1080;\" width=\"1920\" controls src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/02\/Team-Meeting.mp4\"><\/video><figcaption class=\"wp-element-caption\">2-second snippet of a team meeting<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"480\" style=\"aspect-ratio: 854 \/ 480;\" width=\"854\" controls src=\"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-content\/uploads\/2026\/01\/IMG_9476.mov\"><\/video><figcaption class=\"wp-element-caption\">Single-player 3D effect<\/figcaption><\/figure>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>And so I held my torch up high, to cut a path through the darkness&#8230; It&#8217;s the beginning of a new semester! We are Team Torchbearer! This week, as with most ETC projects&#8217; first weeks, is all about setup! But first, what exactly are we doing here? The CAVERN The CAVERN has been a fixture [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":164,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devlogs"],"_links":{"self":[{"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/posts\/1","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/comments?post=1"}],"version-history":[{"count":25,"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/posts\/1\/revisions"}],"predecessor-version":[{"id":332,"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/posts\/1\/revisions\/332"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/media\/164"}],"wp:attachment":[{"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/media?parent=1"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/categories?post=1"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/projects.etc.cmu.edu\/torchbearer\/wp-json\/wp\/v2\/tags?post=1"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}