写点什么

Facebook 发布 React VR,使用 React 进行虚拟现实开发

  • 2017-04-25
  • 本文字数:1016 字

    阅读完需:约 3 分钟

早在 2014 年 Facebook 就布局虚拟现实(VR)技术,并以 20 亿美元收购了沉浸式虚拟现实技术厂商 Oculus。近日 Facebook 又在虚拟现实领域有了新动向,基于其核心的开源前端框架 React 发布了一个虚拟现实网页应用的开发框架 React VR ,进一步践行了其一次学习,到处适用(Learn once, write anywhere)的口号。

过去的 2016 年被誉为虚拟现实的元年,国内外的诸多厂商,如 Oculus HTC 暴风等公司都发布了各自的虚拟现实产品,但是经过上半年的急速发展,下半年却进入了该行业的资本寒冬,而任天堂发布的增强现实(AR)手游Pockemon Go 的大获成功,又纷纷把大家关注的目光拉向了与真实世界交互性更强的增强现实技术。Facebook 在这个虚拟现实寒潮来临之际推出React VR,无疑是想通过简化VR 开发层面的技术难点,来带动虚拟现实的后续发展。

在网页端开发虚拟现实应用的一大挑战,就是其页面的刷新率,如果帧数低于60 帧每秒,就无法给用户带来足够好的用户体验,在Oculus Rift 上,这一指标更是建议达到90 帧每秒。要在单线程的JS 运行环境中达到这点,对性能的要求就比较苛刻。React VR 借鉴了React Native 中将运行和渲染进行分离的架构。它会在web worker 中运行React 的代码,再通过异步桥接将图像渲染到界面上,这样就可以更快地捕捉到用户动作并反馈到图像上,从而减少用户的眩晕感。在React VR 中还引用了诸多React Native 的概念,甚至可以说React VR 本身就是建立在React Native 上的一种平台。它沿用了React Native 的打包功能,以及诸多组件,如View、Text 等。这为有React Native 经验的开发人员减少了不少学习成本。

React VR 的内部是通过包装流行的 JS 3D 引擎 Three.js 来实现的。Three.js 内部通过 WebGL 来将应用展现到页面上,因此可以在支持 WebGL 的浏览器上浏览 React VR 的应用。而在虚拟现实设备上,其使用的是 WebVR 的 API。鉴于目前该规范还在开发中,目前仅支持 Oculus Rift 和三星 GearVR 等设备。

值得注意的是,目前已经存在一些虚拟现实网页应用的开发框架。Mozilla 的开源项目 A-Frame 就是一个相对成熟的例子。React VR 在与 React 的无缝集成上占有优势,这为具备 React 基础的开发人员减少了一定的学习成本,但是最终是否能够后来者居上还需要拭目以待。


感谢刘振涛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-04-25 19:003995
用户头像

发布了 41 篇内容, 共 16.3 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

飞算科技:国家级高新技术企业

飞算JavaAI开发助手

破解大模型运维落地困局 | GOPS大会博睿数据“AI+可观测加速智能运维转型升级”演讲实录

博睿数据

Apple Remote Desktop(远程管理软件)

Geek贝

用好索引的10条军规

量贩潮汐·WholesaleTide

Java 数据库

通义灵码软件工程大模型获顶会最高奖!

阿里云云效

阿里云 通义灵码

【7 月 5 日北京】倒计时 2 天神秘视频公开,大会内容终极剧透

Apache IoTDB

YashanDB的版本升级流程,确保平稳过渡

数据库砖家

大模型时代 RPA 选型必看!企业级与个人版避坑指南,90% 的人都选错了

Techinsight

云原生机密计算新范式 PeerPods技术方案在阿里云上的落地和实践

阿里云基础软件

容器化 ACK Alibaba Cloud Linux PeerPods

飞算 JavaAI 护航电商开发:打造安全无虞的线上购物王国

飞算JavaAI开发助手

飞算 JavaAI:电商需求分析的精准导航仪

飞算JavaAI开发助手

一天助你成为Java开发高手,只需做对这件事

飞算JavaAI开发助手

如何挑选RPA厂商?

Techinsight

RPA 部署不是买白菜!企业级 vs 个人版差异曝光

Techinsight

6月 | 塞讯模拟攻击库更新汇总

塞讯科技

安全验证

数智先锋 | Bonree ONE 赋能雅砻江水电构建端到端全链路可观测体系

博睿数据

Yops 运维面板体验:文件变动自动备份 + 一键恢复实测

是但求其发

nginx ubuntu 容器 运维 Linux 运维

华为HMS for Car签约Anghami与Nabd,打造面向全球的本地化车机内容生态

极客天地

这几类运维难题,看阿里云操作系统控制台如何一站式破解

阿里云基础软件

操作系统 系统运维 智能运维 阿里云操作系统控制台

黑龙江等保测评:筑牢网络安全防线

等保测评

Mooncake 最新进展:SGLang 和 LMCache 基于 Mooncake 实现高效 PD 分离框架

阿里云基础软件

AI Mooncake 大模型推理架构

基于世界模型的实时互动游戏引擎 Mirage:可自然语言创造可互动游戏;阿里开源 OmniAvatar:音频生成全身数字人视频丨日报

RTE开发者社区

技术干货推荐:高效解决性能瓶颈与抖动之进程热点追踪

阿里云基础软件

操作系统 系统运维 SysOM 阿里云操作系统控制台 进程热点追踪

业务提效超5倍,转化率翻番!AI+MCP 如何重塑个性化投资诊断优化报告

盈米AI开放平台

基金 AI 智能体 MCP

通义灵码软件工程大模型获顶会最高奖!

阿里巴巴云原生

阿里云 通义灵码

运维效率提升35%+成本降低40%:低代码开发在企业数字化运维体系中的规模化落地方法论

不在线第一只蜗牛

低代码

1688 Agent Russia 丨俄罗斯淘宝代购1688代采集运系统搭建指南

tbapi

淘宝代购系统 俄罗斯淘宝代购系统 俄罗斯1688代采系统 俄语淘宝系统 俄语1688代采系统

Java 高手修炼秘籍:超实用AI工具合集助你快速提升

飞算JavaAI开发助手

Nexpose 8.13.0 for Linux & Windows - 漏洞扫描

sysin

Nexpose

快手联合港科大“放大招”!推出测试时扩展方法EvoSearch,1.3B视频模型碾压14B!

快手技术

大模型 快手 语言大模型

GraalVM 24 正式发布阿里巴巴贡献重要特性 —— 支持 Java Agent 插桩

阿里云基础软件

Java jdk GraalVM

Facebook发布React VR,使用React进行虚拟现实开发_Meta_周元昊_InfoQ精选文章