• Content count

  • Joined

  • Last visited

  • Days Won


davrous last won the day on March 20

davrous had the most liked content!


About davrous

Contact Methods

  • Twitter

Recent Profile Visitors

1,333 profile views
  1. Thanks for the feedback. I already thought about that indeed and that's why you're able to load you're own mesh. But our default proposed mesh are now animated also. Meaning that if you're pressing the trigger, you'll see them moving in WebVR in your headset for even better immersion! I've almost finished binding all animations to the Vive Wands & Oculus Touch controllers. But to support offline, I'm going to add a .manifest file to the models to serialize them in IndexedDB. To have a full offline experience, you'll just have to create a HTML5 Offline manifest file referencing the .babylon.manifest files. I'm providing details on the approach in this article: https://www.davrous.com/2016/02/05/discovering-sponza-by-babylon-js-and-sharing-tips-on-how-to-build-a-cross-platforms-webgl-game/ in the Offline first section.
  2. Hello, You need to setup access-control-allow-origin property on your assets. This is part of the CORS principles on the web. You can read a similar topic on this here: David
  3. By the way, Babylon.js is supporting DDS but not all platforms/browsers do.
  4. Hi, Babylon.js is based on WebGL as stated on our main page: http://www.babylonjs.com . It uses WebGL 1.0 on most browsers and WebGL 2.0 when available in a transparent way. Depends on your project, but it's much better and productive to use a framework like Babylon.js where we're taking care of shaders, loader, exporters, services such as offline with IndexedDB and cross-platforms compatibility, etc. You'll find the complete list here: http://www.babylonjs.com/#specifications You shouldn't under estimate that. Regarding DirectX, you seems to be confused, mixing several concepts. WebGL is an abstraction layer on top of OpenGL for JavaScript. It uses GLSL shaders. But the browsers can implement it in several ways. For Edge & IE for instance, we're using a GLSL to HLSL (DirectX) transpiler for the shader and binding the WebGL calls to DirectX. Chrome is using ANGLE to either targer DirectX on Windows or OpenGL on Linux & MacOS. But at the user/developer level, this is transparent. You're doing WebGL, that's all and this is the case of all 3D frameworks you'll find for the Web: Babylon.js, Three.js, PlayCanvas, A-Frame, React VR and so on. Bye, David
  5. Indeed, they're good quality but : - you can very easily change them by attaching your own mesh with less polygons - you need a powerful GPU for VR to render 90 fps anyway, so it's not the controllers that are going to impact too much But you're right, I've asked myself the question when generating the models but haven't seen any performance problems linked to that so far.
  6. Hello, As some of you may know, we have been forced to introduce a breaking change in the way to use the physics engines starting with v2.4. We try as much as possible to avoid breaking but sometimes it can help introducing a much better way to achieve something. This is the case for physics as now, the physics impostor and its associated mesh are better linked. To better understand why, extract from the doc: "The physics impostor synchronizes the physics engine's body and the connected object with each frame. That means that changing the object's position or rotation in Babylon code will also move the impostor. The impostor is also the one updating the object's position after the physics engine is finished calculating the next step". In previous implementation, we had a lot of users questions & feedback that didn't understand why moving the mesh wasn't doing anything once it was transformed into a "physic object". Please read our documentation to better understand how to use physics in Babylon.js: http://doc.babylonjs.com/overviews/using_the_physics_engine I've then updated my tutorial and the default sample of our main page: - Understanding collisions & physics by building a cool WebGL Babylon.js demo with Oimo.js: https://www.davrous.com/2014/11/18/understanding-collisions-physics-by-building-a-cool-webgl-babylon-js-demo-with-oimo-js/ - Main sample: http://www.babylonjs.com/Demos/Physics/ Thanks! David
  7. Yes, Vive controllers have sometimes to be enabled like that. Let's hope, they will adress that in a future driver update as Oculus Touch are better on this point.
  8. It's done inside the code of attachControl on the WebVRCamera and must be user initiated. This means that when you're clicking on the Switch to VR button, it should light up the headset and render inside it. If not, read the http://doc.babylonjs.com/overviews/webvr_camera troubleshooting part. I've tested it successfully in Chromium available on http://webvr.info on Windows 10 with latest Vive drivers & Steam VR.
  9. This week-end was productive! By creating a WebVRFreeCamera and attaching control on it (2 lines of code then), you will automatically have either the HTC Vive controllers mapped or the Oculus Touch based on your device. This means that we will load the 3D models from our CDN by default and even provide default behavior! For instance, try to press the trigger or the menu button on Vive and you'll see them moving. Next steps are: - Add prebuilt animation on Oculus Touch too - Add default lightning (Hemi) on 3D models to view them in good quality when the scene are no or few lights (most of our demo scenes have baked lightning for instance) - Add a default teleport behavior where you can point an area and jump to it using similar rendering/UI as in Vive games David
  10. @jellix it will be in 3.0.
  11. Hi beloved community, The implementation of WebVR 1.1 is in pretty good shape, @RaananW has done an impressive work. We're still in the process of polishing and finding ways to make it simple & powerful, the spirit behind Babylon.js since the beginning. You can read the documentation here: http://doc.babylonjs.com/overviews/webvr_camera and you'll discover that you can map your controllers (HTC Vive Wand or Oculus Rift Touch) to a mesh to the final sample shared at the end: http://www.babylonjs-playground.com/#5MV04 (you need a recent version of Chromium or Firefox with gamepad extension enabled you may find on http://webvr.info) I'm in the process of integrating the 3D models of both controllers. For instance: - HTC Vive Wand model: http://www.babylonjs-playground.com/#NCLFI - Left Touch: http://www.babylonjs-playground.com/#NCLFI#1 - Right Touch: http://www.babylonjs-playground.com/#NCLFI#2 I'd like to animate them by default when you'll press the trigger & the button to enhance immersion and provide you a default behavior that'll match most use cases. We still need to work on that with Raanan. I'm also experimenting turning Sponza in VR mode: http://aka.ms/sponzaVR . You can play with it if you've got a WebVR 1.1 device but beware, I'm still breaking it frequently. It also works on smartphone using Cardboard as we're falling back to VRDeviceOrientation camera in case of non WebVR support. VR for all!!! Regarding WebVR, it currently works in: - Edge Windows 10 Insider fast version that ships WebVR on by default. You can try it using the Mixed Reality Portal simulator: https://mixed.reality.news/news/try-windows-10s-mixed-reality-portal-your-pc-with-insider-build-15048-no-headset-required-0176419/ - Chromium with HTC Vive & Oculus Touch Stay tuned, we're continuing building great stuff you'd like. Cheers, David
  12. Hello, Yes, it's probably a MIME type issue. You need to add the .babylon file extension as "application/babylon" for instance to change that. As you're running on top of Apache, you should read this doc: http://www.htaccess-guide.com/adding-mime-types/ David
  13. It currently only works with WebVR 1.1 and you can download a WebVR 1.1 ready browser here: http://webvr.info We'll work on documentation / tutorial in the week.
  14. Wow. Awesome job @Nockawa. Perf are really impressive!!!