标签: webvr

使用Oculus rift显示Web应用程序输出

我有一个使用WebGL生成3D场景的Web应用程序.我想知道是否有可能使用Oculus rift显示这个场景?这有多难?

webgl oculus webvr

6
推荐指数
2
解决办法
2224
查看次数

aframe - 在运行时设置相机位置

在 a-scene 中,我尝试在运行时更改我的相机位置。DOM 属性发生变化,但相机不会移动。

我会错过什么?

我的js代码: document.querySelector('#myCameraPosition').setAttribute('position', '0 0 0');

我的场景:

    <a-entity id="myCameraPosition" position="0 0 50">
        <a-entity id="myCamera" camera look-controls keyboard-controls>
        </a-entity>
    </a-entity>
Run Code Online (Sandbox Code Playgroud)

webvr aframe

6
推荐指数
2
解决办法
6714
查看次数

将相机位置移动限制在特定3D对象的区域

我试图将相机位置移动限制为由3D对象/对象子项定义的特定区域.例如,如果我在海洋上有一个走道对象,我只希望我的用户能够在该走道上向前和向后移动摄像机.类似于Unity中的第一人称控制器导航网格但没有AI方面.

我会喜欢基于AFrame的解决方案,但如果有三个js解决方案,我不介意编写自定义组件.

谢谢!

three.js webvr aframe

6
推荐指数
1
解决办法
723
查看次数

如何在WebVR/A-Frame中收听Android Chrome上的点击事件?

我正在尝试在Android Chrome上收听点击事件(确切地说,从谷歌纸板中拉出磁铁),但如果设备进入VR模式,这似乎无效.我正在使用三星Galaxy S7进行测试:

JS:

window.addEventListener('click', function (evt) {
    console.log("test")
});
Run Code Online (Sandbox Code Playgroud)

在三星内置的Android浏览器中,日志可以在VR模式内外打印.在Android Chrome中,只有在浏览器未处于VR模式时才会显示日志记录.

HTML:

<a-entity camera="userHeight: 1.6" restrict-position look-controls>
    <a-entity cursor="fuse: true; fuseTimeout: 500"
                position="0 0 -1"
                geometry="primitive: ring; radiusInner: 0.02; radiusOuter: 0.03"
                material="color: black; shader: flat">
    </a-entity>
</a-entity>
Run Code Online (Sandbox Code Playgroud)

我正在使用A-Frame ver 0.7.0,但这个问题也可以通过使用本机WebVR API重现.

我认为画布可能正在消耗点击事件,所以我尝试将eventlistener直接添加到Canvas.这也行不通.

这是Chrome中的错误吗?有没有解决方法?我只需要能够听按钮按下.

javascript android google-chrome webvr aframe

6
推荐指数
1
解决办法
489
查看次数

在 Three.js 中,使用 WebVR 时,如何移动相机位置?

我正在尝试调整现有的 Three.js 项目以与 WebVR 配合使用。我已经取得了不错的进展——我可以在 VR 中环顾场景,但我无法将相机位置从它产生的初始位置移开(看起来接近0,0,0,似乎有一个预定义的位置)userHeight被考虑在内)

一旦我调用,renderer.vr.setDevice( vrDisplay )似乎就创建了一个新相机,并且我的场景使用的现有相机不再使用。我想继续使用该相机,或者至少继承它的大部分属性。

我注意到有一个renderer.vr.getCamera()方法(链接到源),但我还没有找到任何如何使用它的示例或文档(或者我是否应该使用它)。奇怪的是,这个方法接受 acamera作为参数,这对于 a 来说有点不直观getter。看看代码,似乎应该调用该函数setCamera,这让我有点困惑。我尝试调用该函数并传入我现有的函数,camera但没有效果。

任何帮助表示赞赏。我正在使用 Three.js R91 在最新版本的 Android/Chrome 上使用 Google Daydream View

three.js daydream webvr google-vr

6
推荐指数
1
解决办法
2889
查看次数

如何在 A-Frame 中为盒子的侧面分配不同的纹理

有没有办法为 A-Frame 中的盒子几何体的每一侧分配不同的纹理,而无需从 6 个独特的平面构建盒子?

<a-box></a-box>  <!-- How to apply a cubemap? -->
Run Code Online (Sandbox Code Playgroud)

更具体地说,如何在 A-Frame 中制作立方体贴图?这是three.js中立方体贴图的一个例子:http ://threejs.org/examples/#webgl_materials_cubemap

谢谢!

webvr aframe

5
推荐指数
1
解决办法
1965
查看次数

禁用检查器

我试图在一个简单的 A-Frame WebVR 应用程序上禁用检查器,但没有成功。

尝试使用并禁用按键Ctrl+ Alt+I使用 JavaScript。但是,检查员仍在加载。

有谁知道怎么做?

我的场景很简单:

<html>

<head>
  <script src="https://aframe.io/releases/0.5.0/aframe.min.js"></script>
</head>

<body>
  <a-scene>
    <a-assets><img id="render" src="back.png"></a-assets>
    <a-sky src="#render"></a-sky>
  </a-scene>
</body>

</html>
Run Code Online (Sandbox Code Playgroud)

mozilla webvr aframe

5
推荐指数
1
解决办法
1192
查看次数

隐藏嵌入的 aframe 场景

我想以编程方式隐藏和显示我嵌入的 aframe 场景。当网站加载时场景是隐藏的,但是我只能让它在这样的延迟下工作:

window.onload = function () {
setTimeout(function() { document.getElementById("scene-page").setAttribute("hidden", ""); }, 500);
}
Run Code Online (Sandbox Code Playgroud)

当我不添加此延迟时,即使再次将其设置为“可见”,场景仍然处于隐藏状态。具体来说,画布的大小似乎被调整为 0px:

<canvas class="a-canvas a-grab-cursor" data-aframe-canvas="true" width="0" height="0" style="width: 0px; height: 0px;"></canvas>
Run Code Online (Sandbox Code Playgroud)

使其可见的唯一方法是调整浏览器窗口的大小,然后似乎调整画布的大小。

有没有更好的方法可以毫不拖延地隐藏场景?

javascript webvr aframe

5
推荐指数
1
解决办法
644
查看次数

获得WebVR中的绝对(站立)位置

我正在使用Three.js开发WebVR应用程序.在其中我试图获得相对于房间的站立位置.

如何使用VRStageParameters.sittingToStandingTransformThree.js中的矩阵将我的相机从坐姿转换为站立空间?

three.js webvr

5
推荐指数
0
解决办法
100
查看次数

在 A 帧中流式传输音频

我正在使用 NAF 在 A 帧中构建多用户体验,并且我有一些包含场景不同点的音乐曲目的位置音频。我试图弄清楚是否有可能让所有连接的用户同时收听音乐。它们的位置非常重要,因为我需要场景中的多个音频源。目前,当您进入体验时,曲目就开始了,因此每个人在进入场景时都会从一开始就听到它们。这是我现在正在使用的文件:https : //glitch.com/~indigo-roomy-supermarket

我尝试使用广播组件,但没有成功。我想尝试使用抽搐流并隐藏视频的解决方法,尝试将其投影到原始对象,但到目前为止还不起作用(只是设法将其附加到场景上的 div,我可以隐藏视频但音频永远不会是定位的)。这是我尝试过的文件(未联网,但应该相同):https : //glitch.com/~twitchtest-01 我知道可以使用以下选项将 vimeo 连接到框架:https:/ /github.com/vimeo/aframe-vimeo-component 但音频本身不是定位的,所以它并没有真正解决我的问题(另外,我不知道它是否适用于 vimeo live)。

如果有人知道这样做的方法,如果您能分享您的智慧,我将不胜感激。非常感谢!

audio-streaming webvr aframe

5
推荐指数
1
解决办法
209
查看次数