- From: Leonard Daly <web3d@realism.com>
- Date: Thu, 24 Aug 2017 16:02:38 -0700
- To: public-decwebvr@w3.org
- Message-ID: <37f07426-8702-d42a-7239-86935abd3785@realism.com>
Forwarded from web-vr-discuss with permission. It's funny that you sent this email now. I was just doing a summary on what is the best way to get started with WebVR <http://lensreality.com/how-to-get-started-with-webvr/> with an overview of the different frameworks, so it was cool to read the opinions of so many people in the community at once! I do not think that one solution fits all, the choice of a framework should be based on someone's experience and project. As I mention in the article:find the framework that feels most comfortable to work with. A-frame - if you are not very experienced with JS, it is a great place to start with as it hides a lot of the complex logic of three.js. Once you start building more complex experiments, though, you will need to start using three.js. They have a great responsive community on slack and twitter React VR - perfect place to start if you have experience with React, otherwise maybe go with the other options Three.js - if you have significant experience working with JS libraries, start with it as it will allow you to do more stuff and better understand the logic behind what you are doing. Also, it has a great community, extensive documentation, and many helpful examples Babylon.js - similar to three.js but the main difference is that it was specifically created for games. As they just recently added WebVR support, there might be less WebVR developers currently using it (I don't know any) WebGL - Learning WebGL is hard but also a very rewarding job. It takes years to perfect it, so if you want to get a VR prototype up and running in the next few weeks, it's better to go with some of the already mentioned frameworks. Hope, it was helpful! Have a great day! Billy Product Manager Creator Experience www.coherent-labs.com <http://www.coherent-labs.com> <http://t.signauxdix.com/e1t/c/5/f18dQhb0S7lC8dDMPbW2n0x6l2B9nMJW7t5XZs7fcFhRW3LrccW5vwml6W1p7Y5W56dRvDf1RJsxC02?t=http%3A%2F%2Fcoherent-labs.com%2F&si=5323868319252480&pi=1ee05a1a-0601-4858-af06-f624a93676d4> On Wed, Aug 23, 2017 at 10:41 AM, Chris Van Wiemeersch <cvan@mozilla.com <mailto:cvan@mozilla.com>> wrote: I'd recommend the following frameworks for building WebVR experiences: • A-Frame – https://aframe.io/ (entity-component WebVR framework, built atop three.js) • LÖVR – http://lovr.org/docs/WebVR (scenes can be written in Lua and executed natively, and packaged to WebVR using emscripten + asm.js: http://lovr.org/share) • Primrose – https://www.primrosevr.com/ (built atop three.js) • three.js – https://threejs.org/examples/?q=webvr <https://threejs.org/examples/?q=webvr> (underlying and here's a good example of an open-source experience: https://github.com/stewdio/day-and-night-webvr <https://github.com/stewdio/day-and-night-webvr>) • Babylon.js – https://docs.microsoft.com/en-us/windows/uwp/get-started/adding-webvr-to-a-babylonjs-game <https://docs.microsoft.com/en-us/windows/uwp/get-started/adding-webvr-to-a-babylonjs-game> (WebGL engine, alternative to three.js) • Vizor – https://vizor.io/ (easy WebVR content-creation tool + hosting service) • PlayCanvas – https://developer.playcanvas.com/user-manual/vr/ <https://developer.playcanvas.com/user-manual/vr/> (powerful WebGL 3D game engine with a custom WebGL engine, entity-component framework, and hosting service) • Hologram – https://hologram.cool/ (easy-to-use macOS native application, built atop A-Frame) IYCMI: Here's a case study of a recent experiment by Shopify built using PlayCanvas: https://medium.com/shopify-vr/building-a-vr-shopping-experience-for-the-web-tips-and-takeaways-shopify-4a8017d5f6f5 <https://medium.com/shopify-vr/building-a-vr-shopping-experience-for-the-web-tips-and-takeaways-shopify-4a8017d5f6f5> On Tue, Aug 22, 2017 at 5:03 PM, John Carlson <yottzumm@gmail.com <mailto:yottzumm@gmail.com>> wrote: I don’t have a framework! Convince me to use yours instead of THREE.js! John Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10 *From: *Sean McBeth <mailto:sean.mcbeth@gmail.com> *Sent: *Tuesday, August 22, 2017 8:00 PM *To: *James Baicoianu <mailto:james_mozilla@baicoianu.com> *Cc: *web-vr-discuss@mozilla.org <mailto:web-vr-discuss@mozilla.org> *Subject: *Re: [webvr] Choosing a graphics library/framework Well, if we're naming off our own frameworks, then Primrose <https://www.primrosevr.com>! On Tue, Aug 22, 2017 at 7:28 PM, James Baicoianu <james_mozilla@baicoianu.com <mailto:james_mozilla@baicoianu.com>> wrote: Don't forget JanusVR as well! Our JanusWeb client is also built on top of Three.js, provides a declarative layer similar to A-Frame, and like Babylon provides more entity management and game engine functionality that's useful for building larger interactive interconnected worlds. https://web.janusvr.com/ -- James Baicoianu On 8/22/2017 1:06 PM, Michael Chang wrote: There's also ReactVR now which I haven't heard anyone mention (or use). On Tue, Aug 22, 2017 at 11:53 AM, Leonard Daly <web3d@realism.com <mailto:web3d@realism.com>> wrote: Hi John, As others have pointed out, you are mixing different technologies/layers here. The closest two being THREE and Babylon. From my perspective, you are trying to build a Metaverse. That is a lot of content. As long as it works, people (as in users) are not going impressed with your underlying technology. So choose the technology that males your work (and that of user/developers) easy -- as long as it works. WebGL is when you absolutely need it to run fast. Unless you are going to write your own bower, this is about as low as you can go. BTW, I put shaders here. You probably want to have a decent library of them so people don't have to write one. THREE/Babylon are programmatic interfaces to WebGL (there more than that, but it's a good first start). Writing code at this level is much easier to manage and maintain that WebGL code. If this is your choice, all metaverse developers will need to use one of these APIs -- meaning they will need to write JavaScript code. A-Frame is a semi-declarative language. It abstracts some of the features of THREE into a declarative language. If this is your choice, developers will need to write HTML-like code (tags and attributes), unless the particular desired feature is not available. Then the developer will need to write using the A-Frame API to THREE. (This is what makes it semi-declarative.) Carefully check the A-Frame documentation to make sure that it provides the features you are looking for. Also note that A-Frame is still in pre-release development (V0.6). Things will probably change. The W3C has a community group for Declarative VR (https://www.w3.org/community/decwebvr/ <https://www.w3.org/community/decwebvr/>). Membership is open to everyone. (I am co-chair). The group is working on a fully declarative language. We would like your inputs as you work through the issues of what is needed for a declarative language that will fully integrate with HTML, DOM, CSS, and other W3C technologies. If you are interested, I can provide further information as to my findings and preliminary development. Leonard Daly On 8/22/2017 12:08 AM, John wrote: Hi all! I'm a recent CS grad who is convinced that WebVR is going to play a major part in the development of the Metaverse. I've spent some time dabbling with three.js, but I feel that it's time for me to choose to choose between WebGL, three.js, and A-Frame; could anyone give me a quick breakdown of the pros and cons of each? I don't want to invest too much time in learning something only to have it superseded like Vulkan has with OpenGL. Any tips would be greatly appreciated. Cheers, John Reynolds -- *Leonard Daly* 3D Systems Architect & Cloud Consultant President, Daly Realism - /Creating the Future/ _______________________________________________ web-vr-discuss mailing list web-vr-discuss@mozilla.org <mailto:web-vr-discuss@mozilla.org> https://mail.mozilla.org/listinfo/web-vr-discuss <https://mail.mozilla.org/listinfo/web-vr-discuss> _______________________________________________ web-vr-discuss mailing list web-vr-discuss@mozilla.org <mailto:web-vr-discuss@mozilla.org> https://mail.mozilla.org/listinfo/web-vr-discuss <https://mail.mozilla.org/listinfo/web-vr-discuss> _______________________________________________ web-vr-discuss mailing list web-vr-discuss@mozilla.org <mailto:web-vr-discuss@mozilla.org> https://mail.mozilla.org/listinfo/web-vr-discuss <https://mail.mozilla.org/listinfo/web-vr-discuss> -- *Sean T. McBeth* Principal www.primrosevr.com <https://www.primrosevr.com/> _______________________________________________ web-vr-discuss mailing list web-vr-discuss@mozilla.org <mailto:web-vr-discuss@mozilla.org> https://mail.mozilla.org/listinfo/web-vr-discuss <https://mail.mozilla.org/listinfo/web-vr-discuss> _______________________________________________ web-vr-discuss mailing list web-vr-discuss@mozilla.org <mailto:web-vr-discuss@mozilla.org> https://mail.mozilla.org/listinfo/web-vr-discuss <https://mail.mozilla.org/listinfo/web-vr-discuss> -- *Leonard Daly* 3D Systems Architect & Cloud Consultant President, Daly Realism - /Creating the Future/
Received on Thursday, 24 August 2017 23:02:59 UTC