光学模拟器 · 逐面光线追踪

穿过镜头的 真实虚化。

光线从第一片镜片进入,在每个镜面折射,被光圈裁切,最后抵达传感器。画面中的焦外正是由这条路径产生的——而不是模糊滤镜。

01 — 前后对比

模糊不等于虚化。

高斯模糊只是把已经记录的像素摊开,镜头扩散的是光。拖动分隔线对比同一场景——光学一侧是在本页面实时计算的,光线穿过一支双高斯 50 mm 镜头。

↔
高斯模糊 光学 · Double-Gauss f/2
正在追踪光线…

是能量,不是平均

强光虚化后依然明亮。镜头把能量重新分布成光斑;高斯模糊则对已经溢出的像素取平均,亮度随之消失。

光圈形状

光圈叶片决定焦外的形状。收小光圈,圆形变成七边形;叶片做成圆弧,它又会变回圆形。

边缘的猫眼

离轴时,光束会被前后镜片裁切,光斑变成指向画面中心的猫眼。

前景 ≠ 背景

存在球差时,焦平面前后的虚化不同:一侧是明亮的光环,另一侧是柔和的中心。

按波长分色

每种玻璃都有自己的折射率和色散。红、绿、蓝在不同位置对焦,在光斑边缘形成色边。

深度与遮挡

使用 RGB + 深度时,每个平面按自身距离虚化,前景遮住后面的光斑——不会出现主体颜色的光晕。

02 — 应用渲染

虚化内部的变化。

模拟器的真实输出。拖动每条分隔线。

正负球差。负球差:边缘出现硬光环;正球差:中心密实、边缘渐隐。同样的虚化半径,两种不同的质感——模糊滤镜无从得知。
按光瞳采样的遮挡。光源与镜头之间的物体只挡住部分光线,光斑变成边缘柔和的月牙——而不是被蒙版切掉的圆。
前镜片上的水滴。同一支镜头、同一张图:对焦 0.6 m 时水滴像一个个小透镜;对焦 5 m 时它们化开,和真实相机一样。

03 — 实时实验室

动手调整镜片。

这是在浏览器中运行的轻量版引擎。拖动镜片可以移动它,蓝色手柄改变曲率,橙色手柄开大或收小光圈,镜头下方的横条用于对焦。右侧的焦外会随每次操作重新计算。

焦距—
光圈—
对焦距离—
RMS 弥散斑—
边缘光量—
轴上光线 视场光线 曲率 光圈

传感器 36 × 24 mm · 背景 + 前景光源
焦外 · 中心
焦外 · 边缘
焦外 · 前景
焦点弥散斑
镜面

真实的三维光线追踪(矢量斯涅尔定律、球面、直径裁切和多边形光圈),并按阿贝数在三个波长上计算色散。为网页做了简化:没有菲涅尔、镀膜、鬼影、衍射和深度。完整应用在 Vulkan/CUDA 上追踪,每像素最多 1024 个采样。

04 — 应用

从镜片到像素。

选择镜头,打开图片、视频或深度图,在 GPU 上实时预览。编辑镜头处方,查看光路以及画面中心和边缘的虚化形状。

镜头虚化模拟器界面:左侧为清晰原图,右侧为光学焦外输出 “光路”面板,显示穿过镜头的光线 “虚化形状”面板,显示中心和视场的 PSF
图片、视频与深度RGB + 深度,按颜色通道计算覆盖;导出 PNG 和逐帧 MP4。
预览 × 渲染质量从 Draft(24)到 Extreme(1024 采样),预览与渲染可分别设置。
镀膜、鬼影与衍射逐界面增透镀膜、镜面间反射,以及随叶片方向的衍射星芒。
可编辑处方每个镜面的曲率、厚度、直径和折射率,图示同步更新。

05 — 镜头库

0+ 款镜头
任你选择。

双高斯、松纳、天塞、佩兹伐、三片式、变形宽银幕和反远摄。每个配置都会改变光学模型、焦距、镜片尺寸、最大光圈和光圈结构。

镜头焦距光圈 结构叶片风格

06 — 引擎

真实光线,GPU 计算。

0Extreme 模式下每像素每通道的光学采样数
0×Vulkan 构建光线图集相比 CPU 的加速倍数(RTX 4090)
0%带深度的色彩合成中边缘跳变的降幅(v0.8.8)
0+针对能量、对焦、深度和 GPU 的自动化测试
1镜头处方镜面、玻璃、光圈
2光线追踪Vulkan 计算着色器中的斯涅尔 + 菲涅尔
3PSF 图集按视场、通道和光圈
4合成线性光下的 RGB + 深度
5输出预览、PNG、MP4、插件

07 — 平台

一支镜头,七个平台。

应用与插件共享同一个光学引擎和同一套镜头库。

桌面应用Windows x64 · GPU NVIDIA CUDA / Vulkan安装 · v0.9.6.20
After Effects原生特效 · 16/32 bpc下载 .zip · v0.2.6 语言:PTEN中文
DaVinci ResolveOpenFX 插件 · 支持深度输入下载 .zip · v0.2.5 语言:PTEN中文
Nuke节点式合成插件下载 .zip · v0.2.6 语言:PTEN中文
Photoshop照片与图层滤镜下载 .zip · v0.1.3 语言:PTEN中文
Blender 新Bruxos Physical Lens 插件下载插件 · v0.1.1 完整包(.zip)
ComfyUI 新ComfyUI 的 Bruxos WebGL 节点下载 .zip · v0.1.0
↻ 插件更新 深度修复、镜头面板及 Photoshop 界面更新。请在 V0.9.26 发布页下载对应插件和语言的压缩包。 查看更新
即将推出

同一光学引擎即将支持:

  • Flame
  • Unreal Engine