# @aura3d/rendering 中文文档

规范地址：https://npmcn.com/package/%40aura3d/rendering/

版本：4\.7\.0
npm 元数据更新时间：2026-10-31T13:50:09.653Z
中文译文更新时间：2026-10-31T14:51:53.246Z
软件包许可：MIT

本文由上游 README 机器翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40aura3d/rendering
原文对照：https://npmcn.com/package/%40aura3d/rendering/?lang=original
项目主页：https://aura3d.auraone.ai/
源码仓库：https://github.com/auraoneai/aura3d

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：12 MB，2686 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：2 个
- 首次发布：2026-06-06T02:14:50.205Z
- 最新版本发布：2026-10-31T13:41:04.891Z
- 已发布版本数：47（近 12 个月 47 个）

## 中文简介

渲染设备抽象，WebGL2/模拟后端，缓冲，纹理，着色器模块，材料，渲染图，照明，阴影和Aura3D的粒子渲染。

## 安装

```sh
npm install @aura3d/rendering
```

也可以使用：`pnpm add @aura3d/rendering`、`yarn add @aura3d/rendering`、`bun add @aura3d/rendering`

## README

# @aura3d /渲染

`@aura3d/rendering` 拥有渲染设备抽象、WebGL2/模拟后端、缓冲、几何、纹理、采样器、着色器模块、着色器库、材质模式、渲染管道、渲染图、照明、阴影、面向诊断的渲染状态和粒子渲染/效果。

## 公共API

-   `RenderDevice`， `createRenderDevice`， `MockRenderDevice`， `WebGL2Device`， `WebGPUDevice`：后端生命周期，资源创建，绘制命令，诊断，WebGPU设备丢失报告，以及显式的WebGPU能力处理。
-   `VertexFormat`， `VertexBuffer`， `IndexBuffer`， `Geometry`， `Texture`， `Sampler`， `UniformLayout`， `TextureBinding`： GPU资源和布局数据，包括纹理准备和色彩空间绑定验证。
-   `PortableShaderMaterial`， `ShaderModule`， `ShaderLibrary`， `ShaderPreprocessor`， `SHADER_CHUNKS`：配对GLSL/WGSL自定义材料、类型化可移植绑定、本机编译器诊断、原子动态替换、着色器源所有权、命名变体、反射、预处理和缓存安全修订。看到 `docs/rendering/portable-custom-materials.md`.
-   `Material`， `MaterialInstance`， `MaterialBinding`， `UnlitMaterial`， `TexturedUnlitMaterial`， `PBRMaterial`， `NormalMappedPBRMaterial`， `MaterialPresetRegistry`：材质模式、统一/纹理绑定、诊断和预置。
-   `RenderGraph`， `ForwardPass`， `DepthPass`， `ShadowPass`， `ShadowMap`， `ShadowProjectionBuilder`， `CascadedShadowMaps`， `ToneMappingPass`， `BloomPass`， `FXAAPass`：传递编排、资源生命周期计划、前向渲染、深度/阴影契约、级联数据和确定性后处理传递。
-   `LightCollector`， `LightUniforms`， `LightingDebug`：定向，点，点光收集，均匀包装，调试线。
-   `Renderer`：用于渲染源提交、调整大小、诊断和处理的公共外观。
-   `Particle`， `ParticleEmitter`，粒子模块； `ParticleRenderer`， `ParticleRenderPass`， `GPUParticleBackend`， `ParticleSystem`： CPU/GPU粒子生成/更新契约，诊断计数器和渲染集成。

## 验证

渲染器资源、可移植自定义材料、顶点格式、着色器库、着色器标记、材料绑定、PBR照明、渲染图排序/生命周期计划、确定性色调映射/bloom/FXAA后期处理通道、阴影通道/投影、照明调试级联、粒子渲染、GPU粒子生成/更新路径、WebGPU设备丢失诊断、WebGL2浏览器像素、视觉像素、着色器验证和性能基线 `tests/unit/rendering/*.test.ts`， `tests/browser/portable-custom-materials.spec.ts`， `tests/browser/rendering-webgl2.spec.ts`， `tests/browser/shadow-browser.spec.ts`， `tests/browser/particle-browser.spec.ts`， `tests/browser/gpu-particle-backend.spec.ts`， `tests/visual/*.spec.ts`, `tests/performance/system-baselines.ts`． 导出和导入一致性由 `pnpm verify:exports` 和 `pnpm verify:imports`.

支持的低级扩展契约、生命周期所有权、语义版本 兼容性策略和两个外部消费者证明文档 `docs/architecture/extension-points.md` 并且被 `pnpm renderer:extension-escape-hatch`. `renderer.device` public是只读的吗 逃生出口;渲染器拥有那个设备并处理它。

## 常见问题

### @aura3d/rendering 是什么？

渲染设备抽象，WebGL2/模拟后端，缓冲，纹理，着色器模块，材料，渲染图，照明，阴影和Aura3D的粒子渲染。

### 如何安装 @aura3d/rendering？

在项目目录运行 npm install @aura3d/rendering，或使用 pnpm add / yarn add / bun add。

### @aura3d/rendering 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @aura3d/rendering 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @aura3d/rendering 可以商用吗？

@aura3d/rendering 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @aura3d/rendering 还在维护吗？

最新版本 4\.7\.0 发布于 2026/10/31（2 天前）；至今共发布 47 个版本，其中过去 12 个月发布了 47 个；首次发布于 2026/06/06。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

