{"id":769,"date":"2019-04-25T19:24:41","date_gmt":"2019-04-25T19:24:41","guid":{"rendered":"http:\/\/www.smart-bricks.net\/?p=769"},"modified":"2019-04-28T22:23:11","modified_gmt":"2019-04-28T22:23:11","slug":"w3c-publishes-webxr-draft-specification-for-direct-web-interaction-with-immersive-hardware","status":"publish","type":"post","link":"http:\/\/www.smart-bricks.net\/index.php\/2019\/04\/25\/w3c-publishes-webxr-draft-specification-for-direct-web-interaction-with-immersive-hardware\/","title":{"rendered":"W3C Publishes WebXR Draft Specification for Direct Web Interaction With Immersive Hardware"},"content":{"rendered":"\n<p>The <a href=\"https:\/\/www.w3.org\/\"><em>World Wide Web Consortium<\/em><\/a> (W3C) recently published draft specifications for WebXR. The <a href=\"https:\/\/immersive-web.github.io\/webxr\/#toc\">WebXR Device API<\/a>\n seeks to provide &#8220;the interfaces necessary to enable developers to \nbuild compelling, comfortable, and safe immersive applications on the \nweb across a wide variety of hardware form factors&#8221;. <\/p>\n\n\n\n<p>WebXR is an API that allows developers to create XR experiences; a term which encompasses <a href=\"https:\/\/www.fi.edu\/what-is-augmented-reality\">Augmented Reality<\/a> (AR), <a href=\"https:\/\/en.wikipedia.org\/wiki\/Virtual_reality\">Virtual Reality<\/a>(VR) and newly-developed <a href=\"https:\/\/www.fi.edu\/difference-between-ar-vr-and-mr\">immersive technologies<\/a>. The <a href=\"https:\/\/github.com\/immersive-web\">Immersive Web Community Group<\/a>, the community behind the draft specification explains:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Since we don&#8217;t want to be limited to just one facet of VR or AR (or \nanything in between) we use &#8220;X&#8221;, not as part of an acronym but as an \nalgebraic variable of sorts to indicate &#8220;Your Reality Here&#8221;. We&#8217;ve also \nheard it called &#8220;Extended Reality&#8221; and &#8220;Cross Reality&#8221;, which seem fine \ntoo, but really the X is whatever you want it to be!<\/p><\/blockquote>\n\n\n\n<p>A lot of VR developers build interactive virtual worlds in engines like <a href=\"https:\/\/www.unrealengine.com\/en-US\/\">Unreal<\/a> and <a href=\"https:\/\/unity.com\/\">Unity<\/a>. Programmers often write the underlying logic of those worlds in a language like <a href=\"https:\/\/docs.microsoft.com\/en-us\/dotnet\/csharp\/\">C#<\/a>. WebXR builds on, and seeks to supersede <a href=\"https:\/\/webvr.info\/\">WebVR<\/a>.\n The goal is to facilitate the development of Virtual Reality, Augmented\n Reality and other immersive technology applications by web developers \nfluent in JavaScript, and for a wide set of devices. Developers may thus\n make web apps that leverage both Android&#8217;s <a href=\"https:\/\/developers.google.com\/ar\/\">ARCore<\/a> and iOS\u2019s <a href=\"https:\/\/developer.apple.com\/arkit\/\">ARKit<\/a>. <\/p>\n\n\n\n<p>WebVR was first <a href=\"https:\/\/hacks.mozilla.org\/2016\/03\/introducing-the-webvr-1-0-api-proposal\/\">announced in 2016<\/a>, with the goal to bring VR content to the web, by means of a wide range of headsets. According to the <a href=\"https:\/\/github.com\/immersive-web\/\">Immersive Web Community Group<\/a>, the WebXR Device API has two new goals with respect to WebVR:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>To support  <strong>a wider variety of user inputs<\/strong>, such as voice and gestures, giving users options for navigating and interacting in virtual spaces<\/li><li>To establish  <strong>a commontechnical foundation for development of AR experiences<\/strong>,\n letting creators integrate real-world media with contextual overlays \nthat elevate the experience, on any API-supporting devices.<\/li><\/ul>\n\n\n\n<p>The current version of the API specifies key features, allowing to:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Detect available VR\/AR devices.<\/li><li>Query the devices capabilities.<\/li><li>Poll the device\u2019s position and orientation.<\/li><li>Display imagery on the device at the appropriate frame rate.<\/li><\/ul>\n\n\n\n<p>The WebXR draft specification additionally notes:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>The WebXR Device API&#8217;s new features give rise to unique privacy, \nsecurity, and comfort risks that user agents must take steps to \nmitigate, [such as <a href=\"https:\/\/immersive-web.github.io\/webxr\/#gazetracking-security\">gaze tracking<\/a>, or <a href=\"https:\/\/immersive-web.github.io\/webxr\/#fingerprinting-security\">finger printing<\/a>].<\/p><\/blockquote>\n\n\n\n<p>While WebXR is still in its early stages, it is already supported by both <a href=\"https:\/\/blog.mozvr.com\/tag\/webxr\/\">Mozilla<\/a> and <a href=\"https:\/\/codelabs.developers.google.com\/codelabs\/ar-with-webxr\/#0\">Chrome<\/a> &#8212; with <a href=\"https:\/\/caniuse.com\/#search=webxr\">caveats<\/a>.<\/p>\n\n\n\n<p>A <a href=\"https:\/\/github.com\/immersive-web\/webxr\/blob\/master\/explainer.md\">list of supported devices<\/a> include (but is not limited to):<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/developers.google.com\/ar\/discover\/supported-devices\">ARCore-compatible devices<\/a><\/li><li><a href=\"https:\/\/vr.google.com\/daydream\/\">Google Daydream<\/a><\/li><li><a href=\"https:\/\/www.htcvive.com\/\">HTC Vive<\/a><\/li><li><a href=\"https:\/\/www.magicleap.com\/magic-leap-one\">Magic Leap One<\/a><\/li><li><a href=\"https:\/\/www.microsoft.com\/en-us\/hololens\/\">Microsoft Hololens<\/a><\/li><li><a href=\"https:\/\/www3.oculus.com\/rift\/\">Oculus Rift<\/a><\/li><li><a href=\"http:\/\/www.samsung.com\/global\/galaxy\/gear-vr\/\">Samsung Gear VR<\/a><\/li><li><a href=\"https:\/\/developer.microsoft.com\/en-us\/windows\/mixed-reality\">Windows Mixed Reality headsets<\/a><\/li><\/ul>\n\n\n\n<p>Feedback and comments on the WebXR specification are welcome through <a href=\"https:\/\/github.com\/immersive-web\/webxr\/issues\">Github issues<\/a>. Discussions may also be found in the <a href=\"http:\/\/lists.w3.org\/Archives\/Public\/public-immersive-web\/\">public-immersive-web@w3.org archives<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The World Wide Web Consortium (W3C) recently published draft specifications for WebXR. The WebXR Device API seeks to provide &#8220;the interfaces necessary to enable developers to build compelling, comfortable, and safe immersive applications on the web across a wide variety of hardware form factors&#8221;. WebXR is an API that allows developers to create XR experiences;&hellip;&nbsp;<a href=\"http:\/\/www.smart-bricks.net\/index.php\/2019\/04\/25\/w3c-publishes-webxr-draft-specification-for-direct-web-interaction-with-immersive-hardware\/\" rel=\"bookmark\">Read More &raquo;<span class=\"screen-reader-text\">W3C Publishes WebXR Draft Specification for Direct Web Interaction With Immersive Hardware<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":70,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[1],"tags":[14,23],"class_list":["post-769","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-development","tag-vr"],"_links":{"self":[{"href":"http:\/\/www.smart-bricks.net\/index.php\/wp-json\/wp\/v2\/posts\/769","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.smart-bricks.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.smart-bricks.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.smart-bricks.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.smart-bricks.net\/index.php\/wp-json\/wp\/v2\/comments?post=769"}],"version-history":[{"count":1,"href":"http:\/\/www.smart-bricks.net\/index.php\/wp-json\/wp\/v2\/posts\/769\/revisions"}],"predecessor-version":[{"id":770,"href":"http:\/\/www.smart-bricks.net\/index.php\/wp-json\/wp\/v2\/posts\/769\/revisions\/770"}],"wp:attachment":[{"href":"http:\/\/www.smart-bricks.net\/index.php\/wp-json\/wp\/v2\/media?parent=769"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.smart-bricks.net\/index.php\/wp-json\/wp\/v2\/categories?post=769"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.smart-bricks.net\/index.php\/wp-json\/wp\/v2\/tags?post=769"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}