exokit

exokit

原生JavaScript引擎助力WebXR开发

Exokit是一个原生JavaScript VR和AR引擎,支持WebGL、WebXR等API。它可在多个XR平台运行web内容,开发者能用Three.js、Unity等web技术创建沉浸式体验。Exokit聚焦3D和混合现实,为immersive web技术发展提供支持。

ExokitWebXRVRARJavaScriptGithub开源项目
<h1 align="center">Exokit</h1> <p align="center"><img width="300" height="300" alt="Exokit" src="https://yellow-cdn.veclightyear.com/0a4dffa0/0de8248d-52ef-448a-9b37-2ba9299ce2e5.png"/></p> <p align="center"><b>:dark_sunglasses: JavaScript原生VR和AR引擎 🦖</b></p> <p align="center"> <a href="https://github.com/exokitxr/exokit/releases"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/5a5f0728-c39d-4ac9-978f-08410d2bcb1c.svg"></a> <a href="https://www.npmjs.com/package/exokit"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/379ced29-af76-483e-a48a-74a67206b07a.svg"></a> <a href="https://travis-ci.org/modulesio/exokit-windows"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/60a7a46a-3567-4e0a-9fb1-a9675502eb99.svg?branch=master"></a> <a href="https://ci.appveyor.com/project/modulesio/exokit-windows"><img src="https://ci.appveyor.com/api/projects/status/32r7s2skrgm9ubva?svg=true"></a> <a href="https://twitter.com/exokitxr"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/1d319990-b490-410c-b6ac-ff2d1a74eb65.svg?style=social"></a> </p> <div align="center"> <a href="https://discord.gg/9M8awV8">Discord</a> &mdash; <a href="https://twitter.com/exokitxr">Twitter</a> &mdash; <a href="http://eepurl.com/dFiLMz">邮件列表</a> </div>

示例

<a href="https://youtu.be/cd_DEwCDF6U"><img alt="手部现实标签" target="_blank" src="https://yellow-cdn.veclightyear.com/0a4dffa0/bf0c7872-cab9-4770-ab04-29d748f3fa37.gif" height="190" width="32%"></a> <a href="https://youtu.be/b-UKSg0QCRE"><img alt="Magic Leap实时重载" target="_blank" src="https://yellow-cdn.veclightyear.com/0a4dffa0/e9f8664f-9e85-4088-97c6-760b2380e38b.gif" height="190" width="32%"></a> <a href="https://youtu.be/O1xA1r5SZUM"><img alt="教程现实标签" target="_blank" src="https://yellow-cdn.veclightyear.com/0a4dffa0/dd111e53-a3a9-4bee-8595-e3859f8b7f76.gif" height="190" width="32%"></a>

<a href="https://www.youtube.com/watch?v=m_QntqZmd_Q"><img alt="HTC Vive和Magic Leap的现实投影" target="_blank" src="https://yellow-cdn.veclightyear.com/0a4dffa0/01b5ae38-e1bc-44b9-a5d0-a5cfbe3fcf4f.gif" height="190" width="32%"></a> <a href="https://youtu.be/i0MXRCNkdB4"><img alt="Emukit" target="_blank" src="https://yellow-cdn.veclightyear.com/0a4dffa0/c018aed7-69a6-4207-be22-28ecbe36ccbd.gif" height="190" width="32%"></a> <img alt="各种Exokit应用" target="_blank" src="https://yellow-cdn.veclightyear.com/0a4dffa0/00c20a7c-75fa-4680-b76e-2fd9f2f932b0.gif" height="190" width="32%">

更多示例请查看这里YouTube

概览

本项目使开发者能够使用与Web上运行相同的代码来构建XR体验。Exokit引擎基于Node构建,模拟了一个Web浏览器,为WebGL、WebXR、WebAudio和其他用于沉浸式体验的API提供原生钩子。

:eyeglasses: Exokit当前针对以下平台

  • OpenVR桌面VR(兼容Steam)
  • Oculus桌面(Oculus Rift/Rift S)
  • Oculus移动版(Oculus Quest/Go、GearVR)
  • Magic Leap
  • iOS ARKit *
  • Android ARCore *
  • Google VR(Daydream / Cardboard / Mirage Solo)*
  • 任何XR设备,如果这里没有列出,请发起pull request添加原生绑定!*

* 尚未支持

:electric_plug: 由于Exokit支持在Web上运行的任何内容,它可以驱动使用以下技术构建的体验

  • Three.js
  • Unity
  • Pixi.js
  • Babylon.js
  • A-Frame
  • 自定义WebGL框架
  • WebAssembly、TypeScript和任何可转译为JavaScript的语言

:thumbsup: 为什么选择Exokit?

  • 你希望你的WebGL/WebXR运行得更快。
  • 你想要最新的web API。
  • 你想要在浏览器环境中添加自己的集成——包括原生集成。
  • 你想要一个轻量级的、可以作为可入侵节点模块的浏览器。
  • 你想要将web与Unity等3D引擎结合使用。

:thumbsdown: 为什么不选择Exokit?

  • 你在寻找传统的"网页浏览器"。
  • 你不关心3D或混合现实。
  • 你在寻找严格和/或传统标准的支持。

:book: 宣言

  • 未来是沉浸式的。网络是最好的应用平台。JavaScript是最好的生态系统。
  • 内容应该与硬件无关。明天会有不同的硬件。VR和AR应该是兼容的。
  • 同时做好2D和3D是不可能的。我们不做2D。我们可以使用外部2D浏览器。
  • 使用你喜欢的游戏引擎。Exokit不是游戏引擎。
  • 传统浏览器的设计选择在XR中没有意义。
  • Exokit赋予应用程序力量并将它们连接起来,即使(尤其是)它们没有被设计为协作。
  • 应用程序应该在"现实标签"中运行,这些标签是混合在一起的现实层。

快速入门

桌面版

<h4><a href="https://unavailable">下载当前操作系统版本</a></h4>

运行WebXR站点(桌面版)

exokit https://aframe.io/a-painter/ # 在Exokit中启动A-Painter

Magic Leap

<h4><a href="https://unavailable/magicleap">下载Magic Leap版本</a></h4>

运行(Magic Leap设备)

mldb connect 192.168.0.10:1131 # 需要连接mldb;参见MLDB文档 mldb install -u exokit.mpk # 下载或构建的包 mldb launch com.webmr.exokit -v "ARGS=node . file:///package/examples/hello_ml.html" # 或要加载的URL mldb log exokit:*

架构

Exokit是一个JavaScript Node.js模块。

C++绑定连接到WebGL、WebXR、Magic Leap、Leap Motion和各种其他设备API。

在另一个项目中使用const {window} = require('exokit')()来获得一个沉浸式浏览器。

Exokit可在Windows、macOS、Linux(x64)、Linux(ARM64)和Magic Leap(ARM64)上运行。

Web API支持

  • HTTP/S
  • HTML5
  • <script>
  • DOM
  • WebGL
  • WebXR
  • WebVR
  • WebRTC
  • Canvas2D
  • WebSocket
  • Web Workers
  • <img><audio><video>
  • WebAudio
  • 键盘/鼠标事件
  • Gamepad API
  • <iframe>
  • HTML布局
  • HTML渲染
  • CSS
  • 遗留API

硬件绑定

  • OpenGL
  • OpenVR(Steam VR)
  • Oculus
  • Oculus Mobile
  • Magic Leap
  • Leap Motion

本地开发

完整的构建说明请参见BUILDING.md

git clone https://github.com/exokitxr/exokit.git cd exokit npm install node . <url> # 或使用node . -h进入首页

调试

使用ndb

npm run debug

然后在控制台输入:

let window = await require('./src/').load(yourUrl);

现在你可以在测试应用程序时操作window对象,并且可以设置debugger断点、检查内存、分析CPU等。

标志

  • --xr webvr 无论网页如何,都使Exokit进入WebVR模式。如果Exokit总是以平面模式打开,你可以使用这个来尝试修复。

保持联系

贡献

参与进来!查看贡献指南了解如何开始。

许可证

本程序是自由软件,根据MIT许可证分发。

编辑推荐精选

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
问小白

问小白

全能AI智能助手,随时解答生活与工作的多样问题

问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。

热门AI助手AI对话AI工具聊天机器人
Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

热门AI开发模型训练AI工具讯飞星火大模型智能问答内容创作多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

下拉加载更多