{"id":438,"date":"2006-07-19T12:33:58","date_gmt":"2006-07-19T04:33:58","guid":{"rendered":""},"modified":"2010-06-25T11:55:02","modified_gmt":"2010-06-25T03:55:02","slug":"portal_game_from_valve","status":"publish","type":"post","link":"https:\/\/nick.onetwenty.org\/index.php\/2006\/07\/19\/portal_game_from_valve\/","title":{"rendered":"Portal game from Valve"},"content":{"rendered":"<p>Some of you may know that I&#8217;m a bit of an advocate for the use of portals    in creating dynamic virtual environments. I&#8217;ve published a <a href=\"http:\/\/www.aber.ac.uk\/cla\/archive\/taylor.html\">few<\/a> <a href=\"http:\/\/tinyurl.com\/zhz4c\">papers<\/a>, and generally think that they are pretty cool. I&#8217;ve also recently written a few new algorithms for portal rendering (not yet published). Unfortunately, the use of dynamic, place-anywhere portals has been fairly limited in commercial products.<\/p>\n<p>Static portals are fairly common in game engines. They are usually manually placed in a level to <a href=\"http:\/\/developer.valvesoftware.com\/wiki\/Optimization_%28Geometry%29#Area_portals\">optimise rendering<\/a> (just making the game run faster), but they have also been used for reflective surfaces and transportation devices (sometimes you can see through them and sometimes you can&#8217;t). Prey (a game in development for a <a href=\"http:\/\/www.apogeegames.com\/prey\/history.htm\">very long time<\/a>) is the most recent game to include portals as a key gameplay feature (to create interesting, physically impossible spaces).<\/p>\n<p>Joystiq <a href=\"http:\/\/www.joystiq.com\/2006\/07\/18\/first-trailer-of-valves-portal-released\/\">reports<\/a> that Game Videos has a <a href=\"http:\/\/www.gamevideos.com\/video\/id\/4650\">new video<\/a> demonstrating the more flexible use of portals in Valve&#8217;s upcoming game (aptly) named &#8220;Portal&#8221;.<\/p>\n<p>Here are a few screengrabs:<\/p>\n<p><img src=\"https:\/\/i0.wp.com\/nick.onetwenty.org\/wp-content\/uploads\/b2evo\/portal_game_0.jpg?w=840\" border=\"0\" alt=\"\" data-recalc-dims=\"1\" \/><\/p>\n<p><img src=\"https:\/\/i2.wp.com\/nick.onetwenty.org\/wp-content\/uploads\/b2evo\/portal_game_1.jpg?w=840\" border=\"0\" alt=\"\" data-recalc-dims=\"1\" \/><\/p>\n<p>It&#8217;s nice to see a game actually using <em>dynamic<\/em> portals in an interesting way. The promise has been there for a while, but this seems to be one of the only games to use it. From a technical perspective, there have been barriers to adoption of dynamic portals. Chiefly, it can make rendering much more difficult if using a conventional engine. I read on the 3D Realms <a href=\"http:\/\/forums.3drealms.com\/vb\/archive\/index.php\/t-18664.html\">forums<\/a> that Prey&#8217;s portals &#8220;black out&#8221; with distance to limit draw requirements.<\/p>\n<p>From the demonstration video, it seems that Valve is getting around potential technical problems by ensuring that their portals are still somewhat restricted (there&#8217;s only two, they only appear on walls, and are always planar and elliptical). I&#8217;m still looking forward to  the appearance of even less constrained (say, 3D animated) portals in commercial games. Something like those demonstrated in these <a href=\"http:\/\/www.csse.uwa.edu.au\/~nickl\/TVCG\/\">old videos<\/a> I made.<\/p>\n<p><em>Update: IGN has a <a href=\"http:\/\/media.pc.ign.com\/media\/842\/842671\/vids_1.html\">downloadable version<\/a> of the video and a bit more information in a <a href=\"http:\/\/pc.ign.com\/articles\/718\/718911p1.html\">brief preview<\/a>.<\/em><\/p>\n<p><em>Update: The <a href=\"http:\/\/en.wikipedia.org\/wiki\/Portal_%28computer_game%29\">wikipedia page<\/a> for the game reveals that it is a semi-sequal to the freeware game <a href=\"http:\/\/www.nuclearmonkeysoftware.com\/narbaculardrop.html\">Narbacular Drop<\/a>.<\/em><\/p>\n<p><em>Update: AusGamers have the <a href=\"http:\/\/www.ausgamers.com\/files\/download\/html\/23477\">video for download<\/a> in a zip file. <strong>Recommended<\/strong><\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Some of you may know that I&#8217;m a bit of an advocate for the use of portals in creating dynamic virtual environments. I&#8217;ve published a few papers, and generally think that they are pretty cool. I&#8217;ve also recently written a few new algorithms for portal rendering (not yet published). Unfortunately, the use of dynamic, place-anywhere &hellip; <a href=\"https:\/\/nick.onetwenty.org\/index.php\/2006\/07\/19\/portal_game_from_valve\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Portal game from Valve&#8221;<\/span><\/a><\/p>\n","protected":false},"author":67,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false},"categories":[1],"tags":[],"jetpack_featured_media_url":"","jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/paLsRH-74","_links":{"self":[{"href":"https:\/\/nick.onetwenty.org\/index.php\/wp-json\/wp\/v2\/posts\/438"}],"collection":[{"href":"https:\/\/nick.onetwenty.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nick.onetwenty.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nick.onetwenty.org\/index.php\/wp-json\/wp\/v2\/users\/67"}],"replies":[{"embeddable":true,"href":"https:\/\/nick.onetwenty.org\/index.php\/wp-json\/wp\/v2\/comments?post=438"}],"version-history":[{"count":1,"href":"https:\/\/nick.onetwenty.org\/index.php\/wp-json\/wp\/v2\/posts\/438\/revisions"}],"predecessor-version":[{"id":3822,"href":"https:\/\/nick.onetwenty.org\/index.php\/wp-json\/wp\/v2\/posts\/438\/revisions\/3822"}],"wp:attachment":[{"href":"https:\/\/nick.onetwenty.org\/index.php\/wp-json\/wp\/v2\/media?parent=438"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nick.onetwenty.org\/index.php\/wp-json\/wp\/v2\/categories?post=438"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nick.onetwenty.org\/index.php\/wp-json\/wp\/v2\/tags?post=438"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}