照明与渲染 / 3dsMax
本页包含可以在Verge3D中使用的3ds Max照明与渲染的有关信息。
- 渲染器
- 环境照明
- 灯光(Lights)
- 立方体反射光照探头
- 反射平面光照探头(Reflection Plane Light Probes)
- 全局渲染设置
- 环境光遮蔽(Ambient Occlusion)
- 轮廓渲染
- 曝光控制
- 每个对象的渲染设置
- 在高分屏/视网膜屏(HiDPI/Retina)上渲染
- 贴合摄影机边界(Fit to Camera Edge)
- 可见性断点(Visibility Breakpoints)
- 剪切平面
渲染器
Verge3D支持3ds Max中提供的三个渲染器: 扫描线,ART,Arnold(推荐) 扫描线渲染器用于标准灯光和材质,而ART和Arnold渲染器则通常用于光度测量灯光和物理材质。
在开始处理图形之前,您需要首先考虑选择合适的渲染器。如果您不确定应该选择哪种渲染器,我们建议使用ART。请在3ds Max中使用 渲染设置 菜单设置渲染器。
环境照明
环境照明是基于物理材质的Verge3D图形流水线中一个非常重要的组成部分。您可以只用环境贴图来照亮场景,而不使用任何灯光对象(例如 电动车配置器案例)。
默认的立方体模板为基于图像的照明提供了一个HDR纹理。您可以用自己的文件替换此纹理,或从头开始设置环境照明,参考此视频:
- YouTube: Verge3D for 3ds Max Basics - Part 2 - Creating Materials
- Bilibili: Verge3D for 3ds Max基础 - 02.创建材质
灯光(Lights)
如果您的场景需要动态阴影,或者需要移动光源(如汽车灯光),可以使用 灯光对象。
Verge3D支持由3ds Max中的两种灯光类型:标准和光度学。
光度学灯光
光度学灯光通常与 物理材质一起使用。Verge3D对此类灯光的表现通常以3ds Max的Arnold渲染器作为参考。此外,您可以使用物理摄影机 曝光控制 设置来调整渲染的亮度和色彩范围。
标准灯光
标准灯光通常与 标准材质一起使用。Verge3D对此类灯光的表现通过以3ds Max的扫描线渲染器作为参考。
立方体反射光照探头
Verge3D插件增加了一个名为 V3DReflectionCubemap 的自定义光照探头对象,可用于通过局部反射立方体贴图对对象施加间接照明。
有关使用示例,请查看 Light Probe 演示(也可在资源商店中找到)。
该对象可以在 创建 面板 -> 辅助对象 类别 -> Verge3D 子类别中找到。
一个立方盒反射对象定义了一个由长方体或球体代表的影响范围。
所有包含在该体积内的对象将使用在运行时生成的本地立方盒反射,
而不是场景的全局环境纹理或颜色。
使用局部反射贴图的好处是,它有周围物体的烘焙,
而场景的全局贴图只包含Max的环境设置中指定的背景纹理或颜色。
局部反射贴图也有视差效应,这取决于
影响体积(influence volume)
或
视差体积(parallax volume)
的几何形状。
立方盒反射对象有以下属性参数:
- General
-
常规探头设置:
- Influence Type
- 影响体积的类型:球形(Sphere) 或 长方体(Box)。 只有位于此体积内的对象才会受到光照探头照明的影响。
- Influence Distance
- 影响体积的大小。您也可以改变对象的比例, 使影响体积的形状不均匀。
- Intensity
- 间接照明的强度。 任何不等于1.0的数值在物理学上都是不正确的。
- Clipping Start
- 裁剪起始距离。 位于比此值更近的对象将不会被渲染到立方盒反射中。
- Clipping End
- 裁剪结束距离。 位于比此值更远的对象将不会被渲染到立方盒反射中。
- 可见性选择集
-
对象可见性设置:
- 选择集
- 将出现在立方盒反射上的对象限制为属于此选择集的物体。 在此处留空选择 ("") , 将不指定任何对象集——这样所有的场景对象都将被用于生成立方盒反射。
- Invert Visibility
- 如果指定了 可见先集合 ,则反转对此探头可见对象的选择。
- Custom Parallax
-
视差设置:
- Enable Custom Parallax
- 启用视差校正的自定义设置。这一组设置定义了一个视差体积,用来投射探头捕捉到的照明。如果 Custom Parallax 未启用,时差效果将基于 Influence Type 和 Influence Distance 计算。
- Parallax Type
- 影响视察体积的类型:球形 或 长方体。
- Parallax Distance
- 视差体积的大小。
- Custom Influence
-
自定义影响设置:
- Use Custom Influence
- 启用自定义影响设置。 这组设置允许定义将受此光照探针影响的一组对象。 将使用 Selection Set(如果指定)代替 Influence Type 和 Influence Distance 常规探头设置。
- Influence Selection Set
- 将应受此光照探针影响的对象限制为此选择集。如果指定,则使用它代替 Influence Type 和 Influence Distance 常规探头设置。
- Invert Influence
- 如果指定了 Selection Set ,则反转受此探头影响的对象的选择。
反射平面光照探头(Reflection Plane Light Probes)
反射平面光照探头,用于将实时反射(间接照明)应用于平面对象,如镜子、地板、墙壁等。
有关使用示例,请查看 Light Probe 演示(也可在资源商店中找到)。
Verge3D插件添加了一个名为 V3DReflectionPlane 的自定义光照探头。该对象可以在 创建 面板 -> 辅助对象 类别 -> Verge3D 子类别中找到:
反射平面对象具有以下参数:
- Length
- 反射平面长度。
- Width
- 反射平面宽度。
- Influence Dist.
- 探头所影响的距离。
- Falloff
- 衰减:控制探头影响的下降速度。
- Clip Offset
- 剪切偏移:在靠近摄影机处对光照探头中渲染的对象进行剪切。
- Visibility Selection Set
- 可见选择集:光照探头可见对象的选择集。
平面反射探头会大大降低场景的性能,因为它们会将绘制调用(draw calls)次数乘以 N+1 的系数。若要加快渲染速度,请在 Visibility Selection Set 属性中指定一组有限的反射对象。
全局渲染设置
在3ds Max的主菜单点击Verge3D -> Export Settings... 来访问全局渲染设置。
- Anti-Aliasing
-
抗锯齿,选择场景使用何种反锯齿算法:
- Auto
- 自动,使用系统默认方法。
- MSAA 4x
- 如果目标硬件支持的话,则首选使用4倍采样的多采样抗锯齿。
- MSAA 8x
- 如果目标硬件支持的话,则首选使用使用8倍采样的多采样抗锯齿。
- MSAA 16x
- 如果目标硬件支持的话,则首选使用使用16倍采样的多采样抗锯齿。
- FXAA
- 强制使用快速近似抗锯齿(FXAA)。
- None
- 禁用抗锯齿。
- Use HDR Rendering
-
启用HDR渲染,即高动态范围渲染。
如果激活,Verge3D 将使用 16 位浮点纹理作为渲染缓冲区。此功能可以显著改善 Bloom 后处理的渲染以及基于节点的渐变纹理的平滑度。这样做的缺点是增加了 GPU 内存消耗并降低了性能。
此功能与HDR纹理无关,HDR纹理通常用于生成基于图像的照明,因此激活它不会改善此类纹理的渲染。
- Environment Map Size
-
环境贴图尺寸,用于环境照明的纹理尺寸:
- 256
- 最合适的质量和较低的内存消耗(默认值)。
- 512
- 更好的质量,适中的内存消耗和相对降低的性能。可用在渲染高质量的反射的场景,例如渲染珠宝。
- 1024
- 高内存消耗,低性能,最佳渲染质量(一般不推荐)。
- IBL Environment Mode(基于图像照明环境模式)
-
- PMREM (slow)
- PMREM(慢速),高质量(默认值)。
- Light Probe + Cubemap (medium)
- 光照探头+Cubemap(中速),降低基于图像的镜面反射质量,性能更好。
- Light Probe (fast)
- 光照探头(快速),禁用基于图像的镜面反射,性能最高。
环境光遮蔽(Ambient Occlusion)
环境光遮蔽是一种渲染技术, 它根据点暴露在光源中的程度, 从间接(环境)照明中添加柔和的阴影,从而提高场景的真实感。
Verge3D实现了地面实况环境光遮蔽(GTAO),您可以在 Verge3D Export Settings 的 AO 部分找到这些设置(3ds Max菜单 Verge3D->Export Settings... ):
Verge3D 仅对 物理材质 节点添加环境光遮蔽效果,并且仅当场景具有 环境光照 (颜色或贴图)时才添加环境光遮蔽效果。
- Enabled
- 在场景中启用环境光遮蔽。
- Distance
- 距离:用于计算环境光遮蔽的半径(以系统为单位)。 较高的值通过过度变暗和扩大其区域使效果更加明显, 但也会降低性能。 较低的值会使遮蔽不太明显。
- Factor
- 因子:遮蔽效果的强度。
- Trace Precision
- 跟踪精度:更高的精度意味着更准确的遮挡, 同时提高性能成本。精度越低,意味着性能越好, 但效果似乎不那么突出。
- Bent Normals
- 使用修改的(或“弯曲”) 法线对环境进行采样替代原有采样。 修改后的法线表示遮蔽最少的方向,并使环境光照更加逼真。
轮廓渲染
轮廓渲染(又名剪影边缘渲染)是一种常见的非真实感渲染(NPR)技术,可以显著增强场景视觉感知。这种效果可用于各种应用,如电子学习、游戏、建筑可视化和技术绘图。
要在Verge3D应用中使用物体的轮廓(和可选的辉光),首先在 Verge3D Export Settings 设置窗口中启用该效果:
然后将 outline(轮廓) 拼图应用于对象物体。
轮廓渲染在AR/VR进程中不起作用。可使用其他方法来突出对象物体,如动画或改变材质的颜色。
可以使用以下属性来调整轮廓:
Enabled — 启用/禁用效果。
Edge Strength — 轮廓强度系数。
Edge Glow — 额外发光的强度(渲染在在主轮廓边缘之外)。
Edge Thickness — 轮廓边缘厚度系数。
Pulse Period — 以秒为单位的脉冲周期。指定以下参数,使效果动画化。
Visible Edge Color — 可见边颜色。
Hidden Edge Color — 隐藏边颜色,在任何其他场景对象后面的被渲染的轮廓边的颜色。
Render Hidden Edge — 渲染隐藏边,启用/禁用渲染其他场景对象后面的轮廓边。
尽管有可能渲染发光的物体,但在大多数情况下可以用轮廓渲染来提高场景的视觉清晰度。如果您需要从灯或其他明亮的物体上发光,可以考虑使用 辉光后期处理 来代替。
曝光控制
Verge3D for 3ds Max支持以下曝光控制算法。
- 物理摄影机的曝光控制
- 对数曝光控制
请参见Autodesk的 官方文档 ,了解如何为场景设置曝光控制。
每个对象的渲染设置
Verge3D Rendering Params面板
- Render Order
- 渲染顺序,修改特定对象的渲染顺序。索引值越小,该对象就越早被渲染。在大多数情况下,当使用混合透明度时,您需要调整这个值,以消除透明度的伪影。
- Frustum Culling
- 锥台剔除,启用/禁用对象的锥台剔除优化。如果您有一些可以移动到屏幕空间之外的蒙皮对象,请取消勾选这个选项,以防止它被剔除。
Verge3D Adv. Rendering Params面板
- Fit to Camera Edge
- 请参阅 此处 了解详情。
- Visibility Breakpoints
- 启用对象可见性断点。 请参阅 此处 。
- HiDPI Compositing
- 使用 HiDPI 合成通道渲染对象。有关详细信息,请参阅 下文 。
- Fix Ortho Zoom
- 应用反向正交摄影机变焦作为此对象的比例因子。为父级为正射摄影机的对象启用此属性,以便在用户缩放摄影机时它们不会移动/缩放。
在高分屏/视网膜屏(HiDPI/Retina)上渲染
如今,大多数移动终端和桌面终端都使用了高像素密度技术(即所谓的“Retina”显示器)。在这些显示器上,画面质量有了极大的提升,但其所带来的缺点是降低实时画面计算性能。
以下两种方法是可以在质量和效率之间取得平衡——既提升渲染画质,又不会让场景变得太慢:
- 使用相对更好的分辨率,例如通过将屏幕缩放因子设置为1.5左右。请参阅 此处 了解详情。
- 仅对重要内容(如文本、屏幕空间 UI 元素等)使用 HiDPI 呈现。
后一种方法可以通过启用位于 Advanced Rendering 面板上的 HiDPI Compositing 属性实现:
有关使用示例,请查看 Ring 演示(也可在资源商店中找到)。
贴合摄影机边界(Fit to Camera Edge)
Fit to Camera Edge 是一种基于3D模型绘制屏幕空间UI元素的技术。与使用HTML/CSS相比,这种UI设计方法对3D艺术家来说更“原生”,并且不需要外部工具。但其中还有更多内容:因为UI元素是真正的3D对象,所以您可以应用着色器、照明、动画、变形(您可以自己命名),使它们真正交互式并无缝集成到场景中。
将某个对象设置为摄影机的父对象时, Verge3D Adv. Rendering Params 面板上将显示以下设置:
- Horizontal(水平)
- 贴合对象的水平画布边缘。None - 无水平贴合,Left - 贴合左边缘,*右*- 贴合右边缘,Stretch - 水平缩放对象以贴合屏幕。
- Vertical
- 垂直画布边缘适合对象。None - 无垂直贴合,Top - 贴合上边缘,Bottom - 贴合下边缘,Stretch - 垂直缩放对象以贴合屏幕。
- Shape
- 画布贴合形状。 Box — 使用对象的边界框, Sphere — 使用物体的边界球来适应屏幕上的对象。
- Fit Offset
- 用于在屏幕上调整贴合对象的额外偏移量。实际上,该值按指定的绝对值扩展对象边界(长方体或球体)。
可见性断点(Visibility Breakpoints)
Visibility Breakpoints 允许您根据 3D 视口宽度/高度或方向设置显示/隐藏内容。此功能最重要的用例 — 使场景适应不同的屏幕大小和方向。例如,您可能有两种不同的纵向和横向屏幕方向模型。
如果指定给当前摄影机,则尝试切换到场景中的备用摄影机(必须具有可用的Visibility Breakpoints),如果未找到备用摄影机,则不执行任何操作。
您可以在 Verge3D Adv. Rendering Params 面板上配置断点:
- Min Width
- 对象保持可见的最小画布宽度。
- Max Width
- 对象保持可见的最大画布宽度。
- Min Height
- 对象保持可见的最小画布高度。
- Max Height
- 对象保持可见的最大画布高度。
- Orientation
- 对象保持可见的屏幕方向。
剪切平面
剪切平面(又称剖面图、横截面图、网格截面)是一种用于显示复杂对象(如建筑物、汽车、电器、小玩意、机器等)内部结构的技术。
要添加一个剪切平面,请在3ds Max命令面板中使用 创建 -> 辅助对象 -> Verge3D -> ClippingPlane 按钮。
场景中的对象将在剪切平面对象的 -Z 方向被剪切。
有关使用示例,请查看 Clipping Planes 演示(也可在资源商店中找到)。
剪切平面具有以下参数:
- Affected Objects
- 受影响的对象,被平面剪切的对象的选择集。如果为空,所有场景对象都将被剪切。
- Negated
- 负方向,即对调被剪切和未剪切的两边。
- Clip Shadows
- 剪切从被剪切对象投出的阴影。
- Union Planes
- 对从所有裁剪平面构造并集,影响对象,而不是使用它们的交集影响对象。
- Cross-Section
- 填充剪裁平面和受影响对象之间的横截面。
- Cross-Section Color
- 横断面漫反射颜色和不透明度。
- Cross-Sect. Size
- 横截面尺寸。如果使用较大的场景大小,请增加该值。
遇到问题?
欢迎您随时在 论坛上提问!您还可以加入中文用户社区QQ群(171678760),在线寻求帮助。