光线追踪教程(第 E 部分):材料与世界盒
在最后这一部分中,我们将通过 更改茶壶的光学材料,并随后 显示世界盒(它定义了仿真边界),来完成这个简单的光线追踪游乐场。 结束时,你应当能够熟练编辑几何与材料, 并了解在对象超出仿真世界之前你能将它们移动多远。
步骤 1:更改茶壶材料
从 第 D 部分 创建的场景开始,其中茶壶 已经从形状数据库导入并放置在光束中。 直接在茶壶网格上右键点击,并从上下文菜单中选择 Edit object。 这将打开通用的 Object editor,如 ?? 所示。
在编辑器的 Object 选项卡中,你可以看到茶壶的位置、旋转和颜色。 在此步骤中,我们只需要底部的 Optical 区域:
- 找到 Optical material 字段。
- 点击其旁边的 ... 按钮。
- 在打开的文件选择器中,选择材料
glasses/flint/BAF10.yml。 - 点击 Open 确认,然后关闭对象编辑器窗口。
茶壶现在使用光学数据库中的高折射率燧石玻璃 BAF10。 当你重新运行仿真时,与低折射率材料相比, 光线在进入和离开茶壶时会发生更强的折射。
点击 Run simulation(或按 F9)。当光线追踪结束后, 你应当会看到类似于 ?? 的结果, 光线进入茶壶,在内部折射,并从远侧射出。
步骤 2:显示世界盒
场景中的每个对象都位于一个有限的 世界盒 内。该盒子定义了 光线追踪器期望找到对象的区域。与远在盒子之外的形状相互作用的光线 可能会被忽略,或导致仿真报告无效几何。
要可视化世界盒:
- 在 Optical Workbench 视图中的空白区域(不要在对象上)右键点击。
- 从上下文菜单中选择 View > Optical > Show world box,如 ?? 所示。
启用后,世界盒会显示为一个大型红色线框立方体(或长方体), 包围你的光学系统,如 ?? 所示。 你仍然可以自由移动和旋转对象,但如果将它们拖到远超该盒子的范围之外:
- 它们可能不再以你期望的方式与光线相互作用,并且
- 求解器可能会警告几何无效或位于仿真域之外。
要更改世界盒的大小,请使用左侧面板中标有 Substrate xz-size 的控件。它定义了虚拟世界在 x–z 平面内的横向范围。增大该值可为你提供更多放置对象的空间, 减小该值则会将仿真聚焦在光学系统周围更小的区域。
👏 就到这里! 你已完成入门级光线追踪教程系列。 你已经学会如何加载场景、编辑网格与透镜、移动探测器、添加 CAD 形状、 指定光学材料以及可视化世界盒。接下来你可以使用同样的工具构建更真实的 光学系统,例如简单相机或照明设置。