返回目录
开源项目数字货币类新手

Orillusion:基于 WebGPU 标准的纯 Web3D 渲染引擎

Orillusion 是一个完全基于 WebGPU 标准开发的纯 Web3D 渲染引擎,目标是实现桌面级渲染效果,并支持在浏览器中进行复杂场景的 3D 渲染。当前为 Beta 版本,官方明确不推荐用于任何商业应用。项目采用 MIT 许可证,提供 NPM 与 CDN 两种接入方式,支持 Chrome 113+/Edge 113+ 等已支持 WebGPU 的浏览器。

0 次阅读2026/09/15 发布
Orillusion:基于 WebGPU 标准的纯 Web3D 渲染引擎 来源图片

社区作者 · zZz

它解决什么问题

Orillusion 是一个纯 Web3D 渲染引擎,完全基于 WebGPU 标准开发,旨在实现桌面级渲染效果,并支持在浏览器中渲染复杂 3D 场景。项目封面(配图 1)为其 Cover Art/Logo,配图 2 至配图 12 为官方示例场景的效果图。

项目定位与背景

  • WebGPU 是 Web 领域的最新技术,官方认为它将在 3D 渲染以及 AI/LLM 场景中发挥关键作用。
  • 项目目标是创建一个专注于 WebGPU 领域的技术社区,汇聚优秀开发者。
  • 官方希望越来越多前端开发者能够跟进最新 Web 技术,而不仅仅是做网页设计的图片切片。
  • 官方将持续更新开源贡献者提供的优秀示例,让社区看到更好的作品,并希望帮助社区中才华横溢的个人开发者获得更多关注。

技术要点

  • 纯 Web3D 渲染引擎,基于 WebGPU 标准开发。
  • 支持浏览器内复杂场景的 3D 渲染,追求桌面级渲染效果。
  • 提供 NPM 包 @orillusion/core,同时支持原生 <script> 标签通过官方 CDN 引入,共有全局构建(UMD)、ESModule 构建和 Import Maps 三种引入方式。
  • Engine3D.init() 为异步方法,每次调用返回一个独立引擎实例,可在同一页面并行运行多个引擎。

版本状态提醒

  • 当前为 Beta 版本,官方明确表示不推荐用于任何商业应用。

适用平台

  • Windows/Mac/Linux:Chrome 113+、Edge 113+。
  • Android:需在开启 enable-unsafe-webgpu flag 的情况下使用 Chrome Canary 113+ 或 Edge Canary 113+。

相关链接

  • 官方网站(Official Web Site)
  • 文档(Documentation)
  • 论坛(Forum)
  • 贡献指南(Contributing Guide)

— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。

安装 / 开始使用

一、环境准备

  1. 浏览器要求(WebGPU 支持):
  • Windows/Mac/Linux:Chrome 113+ 或 Edge 113+。
  • Android:需在开启 enable-unsafe-webgpu flag 的前提下使用 Chrome Canary 113+ 或 Edge Canary 113+。
  1. 开发方式:官方推荐使用前端构建工具(如 Vite 或 Webpack)来开发 Web3D 应用。
  1. 版本提醒:当前为 Beta 版本,官方不推荐用于任何商业应用。

二、安装方式一

命令
NPM
  1. 安装依赖:
命令
npm install @orillusion/core --save

import { Engine3D, Camera3D } from '@orillusion/core'

import * as Orillusion from '@orillusion/core'

  1. 按需引入:
  2. 全局引入:

三、安装方式二

CDN 为了更便捷地使用引擎,官方支持用原生 <script> 标签引入 Orillusion,官方 CDN 链接共有三种引入方式:

<script src="https://unpkg.com/@orillusion/core/dist/orillusion.umd.js"></script> <script> const { Engine3D, Camera3D } = Orillusion </script> 上述链接加载的是 Orillusion 的全局构建版本,所有顶层 API 都作为全局 Orillusion 对象上的属性暴露。

  1. 全局构建(Global Build)——可直接通过 CDN 用 script 标签使用 Orillusion:

<script type="module"> import { Engine3D, Camera3D } from "https://unpkg.com/@orillusion/core/dist/orillusion.es.js" </script>

<!-- 定义 ES Module 的名称或地址 --> <script type="importmap"> { "imports": { "@orillusion/core": "https://unpkg.com/@orillusion/core/dist/orillusion.es.js" } } </script> <!-- 可以按自定义名称导入 --> <script type="module"> import { Engine3D, Camera3D } from "@orillusion/core" </script>

  1. ESModule 构建——官方推荐使用 ESModule 方式进行开发。由于大多数浏览器已支持 ES module,只需引入 ES 构建版本的 orillusion.es.js:
  2. Import Maps——为了管理依赖名称,官方推荐使用 Import Maps:

四、首次运行

创建 Engine3D 实例

import { Engine3D } from '@orillusion/core' Engine3D.init().then((engine) => { // Next })

import { Engine3D } from '@orillusion/core' async function demo() { const engine = await Engine3D.init(); // Next } demo()

  1. 使用 Engine3D.init() 创建新的引擎实例。每次调用都会返回一个独立实例——你可以在同一个页面中并行运行多个引擎。
  2. 由于 Engine3D.init() 是异步的,官方推荐在代码中使用 async/await:

五、首次运行

创建 canvas

  1. 默认情况下,Engine3D.init() 会创建一个与窗口同尺寸的 canvas。

<canvas id="canvas" width="800" height="500" />

import { Engine3D } from '@orillusion/core'; let canvas = document.getElementById('canvas')

  1. 也可以手动使用带 id 的 <canvas> 创建画布:
  2. 然后通过 id 获取该 <canvas>,并通过 canvasConfig 传给 Engine3D.init():

const engine = await Engine3D.init({ canvasConfig: { canvas } })

  1. 更多内容请阅读官方 Docs 文档。

六、常见问题

  1. 能否用于商业项目?当前为 Beta 版本,官方明确不推荐用于任何商业应用。
  1. 浏览器运行不起来?请确认浏览器满足 WebGPU 要求:Windows/Mac/Linux 使用 Chrome 113+ 或 Edge 113+;Android 需开启 enable-unsafe-webgpu flag 并使用 Canary 版本。
  1. 能否在同一页面运行多个引擎?可以,每次调用 Engine3D.init() 都返回独立实例,支持并行运行。
  1. 开发或提交 Pull Request 前,请务必先阅读官方 Contributing Guide。
  1. 遇到问题可查阅官方文档(Documentation)、官方网站与论坛(Forum)。

来源教程配图

Cover Art
配图 1 · Cover Art查看原图
教程配图
配图 2 · 教程配图查看原图
教程配图
配图 3 · 教程配图查看原图
教程配图
配图 4 · 教程配图查看原图
教程配图
配图 5 · 教程配图查看原图
教程配图
配图 6 · 教程配图查看原图
教程配图
配图 7 · 教程配图查看原图
教程配图
配图 8 · 教程配图查看原图

适用场景

在浏览器中开发 3D 网页游戏与互动场景
复杂 3D 场景的实时网页渲染与可视化展示
WebGPU 技术学习
示例演示与教学研究
前端开发者进行 Web 端 3D 图形与渲染实践
作为 Web3D 应用的渲染层基础库进行二次开发