# filament – 实时物理渲染引擎
## 项目介绍
filament 是一款高性能的实时物理渲染引擎,专为移动设备和桌面平台设计,以其卓越的渲染质量和跨平台兼容性而闻名。该项目拥有 19894 颗星标,是游戏开发、AR/VR 应用和图形密集型应用的理想选择。
## 主要特点
– **跨平台支持**:支持 Android、iOS、Windows、macOS、Linux 等多种平台
– **高性能**:针对移动设备和桌面平台进行了深度优化
– **基于物理的渲染**:实现逼真的光照和材质效果
– **PBR 材质系统**:支持基于物理的渲染工作流
– **实时阴影**:高质量的阴影效果
– **体积光照**:支持体积雾和体积光效果
– **后处理效果**:包括抗锯齿、HDR、 bloom 等
– **易于集成**:提供简洁的 API 和丰富的文档
## 使用方式
### 集成到项目中
“`bash
# 使用 CMake 构建
mkdir build && cd build
cmake ..
cmake –build .
# 或使用包管理器
# Android: 通过 Gradle 依赖
# iOS: 通过 CocoaPods
“`
### 基本用法示例
“`cpp
// 初始化引擎
Engine* engine = Engine::create();
// 创建渲染器
Renderer* renderer = engine->createRenderer();
// 设置场景
Scene* scene = engine->createScene();
// 添加实体和组件
Entity entity = scene->createEntity();
scene->setName(entity, “Cube”);
// 渲染循环
while (running) {
renderer->beginFrame();
renderer->render(scene);
renderer->endFrame();
}
“`
## 应用场景
– **游戏开发**:创建高质量的 3D 游戏
– **AR/VR 应用**:提供沉浸式的增强现实和虚拟现实体验
– **产品可视化**:实现逼真的产品展示
– **建筑可视化**:创建建筑和室内设计的交互式展示
– **教育应用**:通过 3D 可视化增强学习体验
filament 以其出色的性能和质量,成为了实时渲染领域的重要工具,为开发者提供了构建高质量图形应用的强大能力。