GithubHelp home page GithubHelp logo

spite / webvr-extension Goto Github PK

View Code? Open in Web Editor NEW
303.0 22.0 43.0 3.94 MB

Chrome DevTools extension to emulate WebVR API

License: MIT License

JavaScript 94.70% HTML 5.30%
chrome-devtools-extension webvr hmd emulation

webvr-extension's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

webvr-extension's Issues

Google Daydream Icon Effect

OK, I'm going to take a swing at this and lets see what you think.

There is an algorithm that is used to modify the screen so that the human eye can focus when a phone is held up close and viewed through lenses. You can see what the algorithm is suppose to do to the screen output at the 15 seconds point of this video when the little cardboard icon is clicked:

https://youtu.be/D8dj0bk3cWQ?t=13s

I don't know if that algorithm is actually used with this browser extension or if you're just calling some API function provided by chrome or android or whatever, but if you are or know of how to find that function, as in you could literally copy and paste the math into another file and it would have no additional dependencies left behind... then I would like your help in the idea of applying that algorithm to the entire Android operating system... the idea being you would use your phone with the VR goggle, be able to still visually use your operating system but now using a wireless keyboard and mouse (OTG cables work too)... this would be so empowering where, for very cheaply (I found the goggle, keyboard and mouse on ebay for like $30), just about anybody could immerse themselves in a different environment on demand (especially with ear buds if you're in public spaces or trying to work on code or study an article for school and want 100%)... as of Android 5.0 you can easily invert the screen colors so that reading text is much easier... there's got to be a way to update the older phones, obviously not for things they physically do not have (they do have a cpu that can do the math operations to split the screen) like the gyroscope features where your headset moves around if you twist your neck.

I have no idea if this is the correct direction as my area of focus for software development has been chrome extensions and JavaScript stuff, but I was sniffing around the android domains and think I've found this as a thing to look into, https://source.android.com/devices/graphics/arch-bq-gralloc of course, if someone who actually knew what they were talking about when it comes to android was reading this message, they could probably maneuver the copy/paste of that algorithm relatively easily I'd imagine. Oh, and I'm certain this is a general purpose algorithm in the sense I've been referring to since the same thing is also applied to youtube as well as video games according to the google daydream advertisements.

So, any comments? Know of anybody who might know of someone who would know how to do this?

currentLayers is not defined

Hello,

Recently, I have some errors with the WebVR Chrome extention to view the vr examples on threejs.com like the basic one > threejs.com cubes example

When I click on "ENTER VR", I have an error wich says
VM396:240 Uncaught ReferenceError: currentLayers is not defined

So the VREffect cannot display the dual view.
I suppose it is linked to the recent changes #19 because I didn't have this error a few days ago.

Do you have the same problem?
Thank you

Visual confusion using extension

Hi, this is not critical issue but got confused by cuboid movements in webvr extension tab in web tools. I can see that cuboid turn around axes X and Z swaped with how turn appears to take place on the screen. While there no indication which angle is which in extension that may mean that turn is correct but visually still thinking of cuboid movement. I checked this on webvr examples and sketchfab models, currently just ignoring cuboid visual movement and accept turns as correct if they are same in examples present.

Messy GUI

image

Hi, seems buttons and inscriptions moving with window borders may make messy view sometimes.

VRDisplayEvent implementation

VRDisplayEvent received when onvrdisplaypresentchange is triggered should have a display property pointing on the VRDisplay instance.

From the spec

interface VRDisplayEvent : Event {
  readonly attribute VRDisplay display;
  readonly attribute VRDisplayEventReason? reason;
};

This would be a great addition. Thanks.

Setting frameData.pose (/w Origin Trial)

I'm absolutely sure that this is covered by #21, though I thought it might be useful to log a specific example of Origin Trial issues.

When viewing a page with an active webvr origin-trial, I get the following error:

TypeError: Cannot assign to read only property 'pose' of object '#<VRFrameData>'

screen shot 2017-02-18 at 12 56 39

It looks like I'm passing a native VRFrameData object which has a readonly pose attribute

Provisional Gamepad Support

Hi @spite,

First off, fantastic work! I hope I'm not stepping on your toes, but I was considering adding an emulated HTC Vive controller in a fashion similar to your monkey-patching of navigator.getVRDisplays. Initially just something simple in terms of being able to position/orient it in space and depress buttons. Should I get something functional in a PR in order to discuss further?

Thanks,
lollerbus

Workaround for Origin Trials

webvr.info recently implemented Origin Trials, so the WebVR API is available for the page.

One side-effect of that is that, since the API is "loaded" when the page loads and the OriginTrials token is processed, it overwrites with native methods what the emulator has injected from the content-script, creating a mess of native and injected methods.

WebXR support

Any plans to support WebXR in this extension or to make another extension WebXR-Extension?

Orientation quaternion printed in console is different then the GUI one.

I'm not sure if this is intended or it went unnoticed, but starting with a fresh reset position the orientation reads [0,0,1,0] in the GUI but [0,0,0,1] in the console using this code
var orientation = frameData.pose.orientation; console.log(orientation);
The WebVR spec says it should be [0,0,0,1] but somehow the GUI gets it wrong. I noticed this problem when wanting to use the individual values in a webgl lookat function trying to read orientation[2] instead of orientation[3] because of the GUI.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.