3ds Max 帮助
- Autodesk 3ds Max 2017 中的新功能
- 入门
- 基础知识
- 界面概述
- 启动文件和默认值
- 初始化文件
- 故障恢复系统
- 备份和存档场景
- 查看和导航 3D 空间
- 选择对象
- 移动、旋转和缩放对象
- 创建副本、实例和参考
- 精度和绘制辅助对象
- 对象属性
- 可用工具列表
- 多点触控设备
- 管理场景、文件和项目
- 拖放 MAX 场景文件
- 网格检查器
- 工作空间
- 状态集
- 容器
- 组和集合
- 文件处理命令
- 文件处理工具
- 图像文件格式
- 场景资源管理器
- 场景状态
- 图解视图
- 场景转换器
- 建模
- 创建几何体
- 曲面建模
- 在子对象层级工作
- 细分曲面
- “软选择”卷展栏
- 塌陷工具
- 石墨建模工具
- 可编辑网格曲面
- 可编辑多边形曲面
- 面片对象
- NURBS 建模
- NURBS 模型:“对象和子对象”
- NURBS 曲面
- NURBS 曲线
- 创建 NURBS 曲线和曲面对象
- 创建和编辑 NURBS 子对象
- 附加和导入 3ds Max 对象
- 公用子对象控件
- 编辑点子对象
- 编辑曲线 CV 子对象
- 编辑曲面 CV 子对象
- 编辑曲线子对象
- 编辑曲面子对象
- “软选择”卷展栏 (NURBS)
- “材质属性”卷展栏 (NURBS)
- 创建曲线子对象
- 创建曲面子对象
- 创建和编辑点子对象
- “NURBS 编辑”对话框
- “转化曲线”对话框 (NURBS)
- “转化曲面上的曲线”对话框 (NURBS)
- “转化曲面”对话框 (NURBS)
- CV 曲线:闭合曲线对话框 (NURBS)
- “分离”对话框 (NURBS)
- “编辑曲面上的曲线”对话框
- “编辑纹理曲面”对话框 (NURBS)
- “连接曲线”对话框 (NURBS)
- “连接曲线”对话框 (NURBS)
- “创建放样”对话框 (NURBS)
- “创建点”对话框 (NURBS)
- “创建点曲线”对话框 (NURBS)
- 点曲线:闭合曲线对话框 (NURBS)
- “重建 CV 曲线”对话框 (NURBS)
- “重建 CV 曲面”对话框 (NURBS)
- “重建纹理曲面”对话框 (NURBS)
- “重新参数化”对话框 (NURBS)
- “子对象克隆选项”对话框 (NURBS)
- “按材质 ID 选择”对话框 (NURBS)
- NURBS 曲线和曲面近似
- 低多边形建模工具
- Autodesk Civil View
- 数据交换
- 导入文件
- 导出场景并将场景转换成几何体格式
- 将几何体发送到其他 Autodesk 产品,以及从其他 Autodesk 产品发送几何体
- 链接 AutoCAD、FBX 或 Revit 文件
- 几何体文件格式
- 实体对象
- Adobe Illustrator (AI) 文件
- Alembic (ABC) 文件
- Alias 和 Showcase(WIRE 和 APF)文件
- 导出到 ASCII
- CATIA V4(MODEL、DLV4、DLV3、DLV、EXP、SESSION、MDL)文件
- CATIA V5 (CATPRODUCT, CATPART) 文件
- AutoCAD (DWG) 文件
- AutoCAD 交换 (DXF) 文件
- 3D DWF 文件
- Autodesk Inventor (IPT、IAM) 文件
- Autodesk Revit (RVT) 文件
- Autodesk FBX 文件
- FBX 插件 UI
- 导出
- 导入
- 3ds Max FBX plug-in工作流程
- 为 3ds Max FBX plug-in编写脚本
- 故障诊断和限制
- 故障诊断
- 纹理出现了什么问题?
- 为什么 Mudbox 模型渲染错误?
- 为什么文件增大这么多?
- 为什么会出现几何体偏移?
- 对象为何发生了偏移?
- 为什么在模型上可以看到边?
- 为什么 Revit 灯光在导入时重定向?
- 为什么导入或导出 Revit 文件需要花如此长的时间?
- Revit 摄影机怎么不见了?
- 进行导入和导出后,Revit 摄影机为何发生了变化?
- Revit 体量对象怎么不见了?
- Revit 对象为什么会隐藏或消失?
- Revit 组怎么不见了?
- 何为 Revit 的内部单位系统?
- Revit 日光入口怎么不见了?
- 在 3ds Max 中,场景的缩放比例为什么发生了变化?
- 3ds Max 旋转的边出了什么问题?
- 几何体为什么有面?
- MotionBuilder 中的边为什么看上去不一样?
- 显示层属性怎么不见了?
- 动画层怎么不见了?
- LOD 属性怎么不见了?
- 法线怎么不见了?
- 固定关键点怎么不见了?
- 是否可以关闭显示层导出/导入
- 限制
- 转换支持
- 故障诊断
- 游戏导出器实用程序
- IGES 文件
- JT Open Program (JT) 文件
- LandXML (XML, DEM) 文件
- 运动分析文件 (HTR/HTR2, TRC)
- OpenFlight (FLT) 文件
- Pro/ENGINEER(PRT、ASM)文件
- SAT 文件
- 导出到 Shockwave 3D
- Google SketchUp (SKP) 文件
- SolidWorks(SLDPRT、SLDASM)文件
- STEP(STP、STEP)文件
- Stereolithography (STL) 文件
- 3D Studio 网格(3DS、PRJ)文件
- 导入 SHP 文件
- UG-NX (PRT) 文件
- VIZ 渲染(DRF)文件
- VRML 文件
- Wavefront (OBJ) 文件
- 链接至 Stingray 游戏引擎
- 修改器
- 变换、修改器和对象数据流
- 使用修改器
- 世界空间修改器 (WSM)
- 对象空间修改器
- 对象空间修改器
- 使用影响区域修改器
- 使用“属性承载器”修改器
- 使用“弯曲”修改器
- 使用“倒角”修改器
- 使用倒角剖面修改器
- 关于“摄影机贴图”修改器(对象空间)
- 使用补洞修改器
- 使用“切角”修改器
- 使用“横截面”修改器
- 使用删除网格修改器
- 使用删除面片修改器
- 删除样条线修改器
- 使用置换近似修改器
- 使用“置换”修改器
- 关于编辑网格编辑器
- 关于“编辑法线”修改器
- 编辑面片修改器
- 编辑多边形修改器
- 编辑样条线修改器
- 挤出修改器
- 面挤出修改器
- FFD(自由形式变形)修改器
- 圆角/切角修改器
- 柔体修改器
- HSDS 修改器
- 车削修改器
- 晶格修改器
- 链接变换修改器
- 贴图缩放器修改器(对象空间)
- 材质修改器
- 按元素分配材质修改器
- 融化修改器
- 网格选择修改器
- 网格平滑修改器
- 镜像修改器
- 变形器修改器
- 多分辨率修改器
- 噪波修改器
- 法线修改器
- 规格化样条线修改器
- 优化修改器
- 面片选择修改器
- 面片变形修改器(对象空间)
- 路径变形修改器(对象空间)
- 点缓存修改器(对象空间)
- 多边形选择修改器
- 保留修改器
- 投影修改器
- 投影固定器修改器
- ProOptimizer 修改器
- 推力修改器
- 四边形网格化修改器
- 松弛修改器
- 可渲染样条线修改器
- 涟漪修改器
- 按通道选择修改器
- 壳修改器
- 倾斜修改器
- 使用“蒙皮”修改器
- 蒙皮变形修改器
- 蒙皮包裹修改器
- 蒙皮包裹面片修改器
- 切片修改器
- 平滑修改器
- 球形化修改器
- 样条线 IK 控制修改器
- 样条线选择修改器
- 挤压修改器
- STL 检查修改器
- 拉伸修改器
- 细分修改器(对象空间)
- 替换修改器
- 曲面修改器
- 使用修改器堆栈
- “曲面选择”修改器
- 曲面变形修改器(对象空间)
- 扫描修改器
- 对称修改器
- 锥化修改器
- 细化修改器
- 修剪/延伸修改器
- 涡轮平滑修改器
- 使用 gPoly 对象类型
- 转化为网格修改器
- 转化为面片修改器
- 转化为多边形修改器
- 扭曲修改器
- UVW 贴图修改器
- 顶点焊接修改器
- 顶点绘制修改器
- 体积选择修改器
- 波浪修改器
- 变换修改器
- 关于体素蒙皮
- 动画
- 动画概念和方法
- 动画和时间控件
- 使用控制器
- 动画控制器
- 音频控制器
- 重心变形控制器
- Bezier 控制器
- 块控制器
- 布尔控制器
- 颜色 RGB 控制器(Point3 XYZ 控制器)
- Euler XYZ 旋转控制器
- 表达式控制器
- 层控制器
- 限制控制器
- 线性控制器
- 列表控制器
- 局部 Euler XYZ 旋转控制器
- 注视控制器
- 主点控制器
- MCG 注视约束
- MCG 射线到曲面位置约束
- MCG 射线到曲面位置和方向约束
- MCG 射线到曲面变换约束
- MCG 1 DOF 旋转弹簧控制器
- MCG 3 DOF 旋转弹簧控制器
- 运动捕捉控制器
- 噪波控制器
- 启用/禁用控制器
- 位置 XYZ 控制器
- 位置/旋转/缩放控制器
- 反应控制器
- 缩放 XYZ 控制器
- 脚本控制器
- 平滑旋转控制器
- 弹簧控制器
- TCB 控制器
- 波形控制器
- XRef 控制器
- 动画约束
- 连线参数
- 层次和运动学
- 轨迹视图
- 运动混合器
- 保存和加载动画
- 动画工具
- 预设和偏移
- 使用 Maya 的分析器提高动画性能
- 角色动画
- CAT (Character Animation Toolkit)
- character studio
- 什么是 character studio?
- 使用 character studio 时应了解的内容
- 了解 Biped
- 了解轨迹编辑
- 了解动画工作台
- 理解运动流
- 了解 character studio 工作流程
- Biped
- 创建两足动物
- 了解 Biped 解剖学
- 更改初始 Biped 解剖学
- 命名 Biped
- 调整两足动物姿势
- 缩放链接
- 用橡皮圈移动手臂和腿部
- 两足动物显示选项
- 删除 Biped
- 将角色躯干部位链接到两足动物
- 加载和保存 FIG 文件
- 足迹动画
- 自由形式动画
- 使用 Biped 动画
- 加载、保存和显示 Biped 运动
- Biped 用户界面
- 使用工作台
- 使用运动流
- 使用运动捕捉数据
- character studio 文件格式
- character studio 步骤索引
- 填充
- 模拟和效果
- 空间扭曲对象
- 粒子系统
- 粒子流
- 粒子流如何工作
- 粒子流用户界面
- 动作
- mParticles 和高级数据操纵
- mParticles
- “mParticles 出生”操作符
- mParticles 流
- “mParticles 世界”辅助对象
- mParticles 操作符和测试
- mParticles 修改器
- “mParticles 数据”子操作符
- “自定义 mParticles 模拟”工具
- 使用 MAXScript 对模拟进行基准测试
- 高级数据操纵
- mParticles
- 粒子流
- MassFX
- Hair 和 Fur 修改器(世界空间)
- 布料和 Garment Maker 修改器
- 效果和环境
- 可视化 CFD 数据
- 照明和明暗处理
- 灯光
- 照明分析助手
- 材质编辑器、材质和贴图
- 工作流程:创建和指定材质
- 材质编辑器
- 精简材质编辑器
- Slate 材质编辑器
- 移动有关场景的材质、贴图和颜色
- 材质/贴图浏览器
- 材质管理器
- 材质类型
- 贴图和明暗器
- 硬件明暗处理
- 材质、贴图和顶点颜色工具
- 渲染
- 相机
- 渲染静止图像或动画
- 渲染帧窗口
- “渲染输出文件”对话框
- 查看媒体文件
- 渲染命令
- 渲染器
- 渲染消息窗口
- 默认扫描线渲染器
- A360 云渲染
- ART 渲染器
- iray 渲染器
- mental ray 渲染器
- Quicksilver 硬件渲染器
- VUE 文件渲染器
- 渲染单独的元素
- 工作流:渲染到纹理(纹理烘焙)
- 创建视口快照
- 渲染预览动画
- 比较媒体文件(RAM 播放器)
- 创建全景
- 网络渲染
- 使用“批处理渲染”工具
- 命令行渲染
- Max Creation Graph
- 自定义 3ds Max
- 键盘快捷键
- 参考
- 3ds Max 帮助存档主题
- 疑难解答
- 词汇表
- 2 面(双面)
- 2D 贴图
- 3D 贴图
- 操作
- 活动链接
- 活动时间段
- 活动/非活动足迹
- 自适应锁定
- 调整
- 自适应降级
- 增加的不透明度
- 调整特征姿势
- 仿射变换
- 悬空周期
- 锯齿/抗锯齿
- Alpha 通道
- 环境光颜色
- 环境光
- 动画纹理
- 动画
- 动画控制器/变换控制器
- 动画层
- 应用式 IK
- 区域灯光(mental ray 渲染器)
- 区域阴影
- 纵横比
- 资源
- 附件 (IK)
- 衰减
- 自动栅格
- 避免行为
- 回避行为
- 三向投影视图
- B 样条线
- 平衡因素
- 平衡轨迹
- 弹道步态
- 弹道张力
- 重心坐标
- 行为
- 弯曲链接
- Bezier 曲线
- Biped
- Biped 动力学
- 出生事件
- 位图
- 混合对象
- 块参考
- 块/样式父级
- 模糊/模糊偏移
- 躯干空间
- 布尔操作
- 边界顶点
- 边界框
- 凸出
- 凸出角度
- 按层/按对象
- 重心 (COM)
- 切角
- 剪辑控制器
- 剪切平面
- 编解码器
- 认知控制器
- 组件
- 合成
- 复合材质
- 约束点
- 接触对象
- 容器
- 连续性
- 连续性级别
- 控制晶格
- 控制点
- 控制顶点 (CV)
- 控制器
- 凸面外壳属性
- 冷却
- 坐标空间
- 创建参数
- 横截面
- 群组
- 群组系统
- 曲线视图
- CV
- CV 曲线
- CV 曲面
- 可变形封套
- 变形
- 变形样条线
- 度数
- 代理
- 从属对象
- 从属对象 (NURBS)
- 仓库
- “描述”面板
- 对角线
- 漫反射颜色
- 抖动
- 停靠与浮动
- 双脚支撑周期
- 虚拟对象
- 动力学
- 动力学混合
- 减缓曲线
- 边
- 可编辑网格
- 可编辑多边形
- 元素
- 发射器
- 末端效应器
- 封套
- 事件
- 事件显示
- 事件级别
- 范围
- 面/多边形
- 面状
- FFD
- 视野
- 场
- 体形模式
- 圆角
- 过滤色/过滤不透明性
- 过滤(抗锯齿)
- 过滤(角色动画)
- 最终聚集(mental ray 渲染器)
- 第一个顶点
- 平面镜
- 流
- 荧光
- 弹出按钮
- 跟随对象
- 脚部状态
- 足迹动画
- 足迹方法
- 正向运动学
- 正向运动学 (Biped)
- 帧/帧速率
- 自由格式的动画
- 自由形式方法
- 冻结/解冻
- 功能曲线
- 熔合
- G 缓冲区
- 步态方案
- 步态类型
- Gamma 校正
- 几何基本体
- Gizmo/中心
- 全局事件
- 全局运动剪辑控制器
- 光泽度和高光度设置
- 重力加速度
- 重力
- 栅格对象
- 头对象
- 辅助对象
- 隐藏/取消隐藏
- 层次链接
- 主栅格
- 地平线
- 热材质
- 聚光区/衰减区
- IK 混合
- IK 目标
- IK 解决方案
- 照度
- 图像运动模糊
- 就位模式 (Biped)
- 独立
- 影响
- 初始姿势
- 初始化
- 输入:事件
- 实例
- 实例(运动混合器)
- 交互式渲染器
- 插值
- 反向运动学
- 反向运动学 (Biped)
- 等参线
- 等距视图
- 关键帧模式
- 关键帧/关键点
- 运动学链
- 结
- 启动脚本
- 层轨迹
- 层
- 布局模式
- 抬起
- 光贴图
- 链接的几何体
- 链接
- 侦听器窗口
- 本地容器
- 局部坐标系
- 局部事件
- 放样
- 注视对象
- 亮度
- 光通量
- 发光强度
- 贴图通道
- 贴图材质
- 贴图坐标
- 贴图
- 标记数据
- 标记文件
- 标记
- 主块运动剪辑控制器
- 匹配帧
- 材质 ID
- 材质/贴图层次
- 材质
- 隐藏对象
- MAX 文件
- MAXScript
- 网格
- 变形球
- 镜像
- 混合
- 合成
- 模式/无模式
- 修改器堆栈
- 修改器
- 变形
- 运动混合
- 运动模糊
- 运动捕获
- 运动剪辑
- 运动流
- 运动流编辑器
- 运动流脚本
- 运动混合器 (Biped)
- 运动合成
- 多样性
- 倍增
- 增强曲线
- N 个链接
- 网络管理器
- 网络渲染
- 网络渲染服务器
- 牛顿
- 节点
- 法线
- NTSC
- NURBS
- NURBS 曲线
- NURBS 模型
- NURBS 曲面
- NURMS
- 对象
- 对象实例
- 对象运动模糊
- 对象空间
- 对象空间 (Biped)
- 对象空间修改器 (OSM)
- 障碍物回避行为
- 全向灯
- 泛方向导向器
- 不透明度衰减
- 运算对象
- 操作符
- 操作符图标
- 视觉标记
- 方向行为
- 原点
- 正交视图
- 超出范围类型
- 输出:源/测试
- 泛光化
- PAL
- 参数空间
- “参数”面板
- 参数/参量
- 参数化对象
- 父粒子
- 粒子图表
- 粒子级别
- 粒子系统
- 粒子系统(粒子流)
- 面片
- 基于面片的对象
- 路径
- 路径追随行为
- 周期
- 透视图
- 腿部运动周期
- 光度学
- 光子贴图
- Physique
- 轴点
- 像素
- 踩踏
- 插件
- 点
- 点曲线
- 点曲面
- 姿势
- 位置标记
- 姿势
- 优先级
- 预乘 Alpha
- 主材质通道
- 程序贴图
- 投影灯
- 道具骨骼
- 四元树
- 队列监视器
- 光能传递
- 光能传递解决方案
- 光线跟踪阴影
- 实时
- 红、绿、蓝/色调、饱和度、值
- 参考
- 参考对象
- 优化
- 反射比
- 重新初始化 (Physique)
- 排斥行为
- 库
- 分辨率
- 对位
- 橡皮圈模式
- RVT 链接
- 安全框
- 样品范围
- 缩放步幅
- 扫描线渲染器
- 场景
- 场景范围
- 场景运动模糊
- 场景单位
- 图解视图
- 脚本
- 脚本编辑器窗口
- 脚本化行为
- “脚本工具”面板
- 脚本(运动流)
- 脚本
- 种子值
- 查找行为
- 线段
- 自发光
- 明暗器(mental ray 渲染器)
- 明暗器(标准材质)
- 阴影偏移
- 阴影贴图
- 图形和样条线
- 天光
- 滑动足迹
- 平滑组
- SMPTE
- 源容器
- 空间扭曲行为
- 空间扭曲
- 繁殖粒子
- 高光颜色
- 速度改变行为
- 接合
- 样条线
- 样条线动力学
- SteeringWheels 导航
- 子对象
- 子对象层级
- 相减不透明度
- 太阳光
- 超级黑
- 支撑周期
- 曲面获得行为
- 曲面追随行为
- 扫描对象
- 合成, 合成
- 特征体形模式
- 切线
- TCB (Biped)
- TCB(张力、连续性和偏移)
- 腱
- 张力、连续性、偏移 (Biped)
- 地形
- 测试
- Texel
- 纹理
- 十字叉
- 平铺/镜像
- 拓扑
- 拓朴相关修改器
- 接触
- 轨迹
- 轨迹视图
- 轨迹组
- 轨迹
- 轨迹 (Biped)
- 变换 Gizmo
- 变换
- 变换
- 变换轨迹
- 半透明
- 真彩色
- 扭曲链接
- 唯一容器
- 通用命名约定 (UNC)
- UVW 坐标
- 矢量场
- 矢量场空间扭曲
- 向量和向量控制柄
- 速度插值
- 顶点
- 顶点颜色
- ViewCube 导航系统
- 视口(交互式)渲染器
- VIZ 块
- 走步
- 穿行助手
- 墙壁排斥行为
- 墙查找行为
- 漫步行为
- 权重曲线
- 关联
- 线框颜色
- 线框模式
- 工作台
- 工作流程
- 世界坐标系
- 世界空间
- 世界空间 (Biped)
- 世界空间修改器 (WSM)
- xref(AutoCAD 外部参考)
- 外部参照(3ds Max 外部参照文件)
3ds Max 帮助归档
- Autodesk 3ds Max 帮助归档
- 非事件驱动的粒子系统
- Physique
- 群组动画
- Combustion 支持
- 使用光能传递建立全局照明模型
- 视频后期合成
- 实用工具
使用光能传递建立全局照明模型
光能传递是一种渲染技术,它可以真实地模拟灯光在环境中相互作用的方式。
本主题概念性的概述了什么是光能传递,以及这种全局照明技术如何与 3ds Max 中其他可用的渲染技术相关。这些信息将帮助您决定哪些技术最适于想要执行的可视化任务。通过更精确地模拟场景中的照明,光能传递能够比标准灯光提供更多优势:
- 改善图像质量:3ds Max 的光能传递技术在场景中生成更精确的照明光度学模拟。像间接照明、软阴影和曲面间的映色等效果可以生成自然逼真的图像,而这样真实的图像是无法用标准扫描线渲染得到的。这些图像更好地展示了您的设计在特定照明条件下的外观。
- 更直观的照明:通过与光能传递技术相结合,3ds Max 也提供了真实世界的照明接口。灯光强度不指定为任意值,而是使用光度学单位(流明、坎迪拉等)来指定。而且,真实世界照明设备的特性可以通过使用行业标准的“发光强度分布文件”(比如 IES、CIBSE 和 LTLI)来定义,这些文件从大部分照明制造商那里都可以得到。通过使用真实世界的照明接口,可以直观的在场景中设置照明。您可以将更多注意力集中在设计浏览上,而不注意精确显示图像需要的计算机图形技术。
顶图:未使用光能传递渲染的场景。
底图:使用光能传递渲染的同一场景。
计算机图形渲染
在 3ds Max 中创建的 3D 模型含有相对于 3D 笛卡尔坐标系而定义的几何体数据,该坐标系被称为世界空间。该模型也含有有关每个对象的材质和场景中的照明的信息。计算机监视器上的图像由许多亮点组成的,这些点称为像素。在创建几何体模型的计算机图形图像过程中的任务决定每个像素的颜色,使用的颜色基于模型信息和指定的视点(摄像机)。
模型中曲面上任一指定点的颜色都是曲面的物理材质属性和照明灯光的函数。两个常规的明暗器算法为:局部照明 和全局照明 用于描述曲面如何反射和透射灯光。
局部照明
局部照明算法只描述单独的曲面如何反射或透射灯光。如果给出到达曲面的灯光的描述,则这些 3ds Max 中称作明暗器的数学算法会预测离开曲面的灯光的强度、颜色和分布。与材质描述相结合,不同的明暗器可以确定曲面是具有塑料外观还是金属外观,或它是平滑的还是粗糙的。3ds Max 为定义大量不同的曲面材质提供稳定的界面。
在定义单独的曲面如何与局部级的灯光相交互后,下一个任务就是确定灯光在何处到达曲面源。使用 3ds Max 的扫描线渲染系统,在明暗处理中只考虑直接来自于光源的灯光。
但是,为了获得更精确的图像,不仅需要考虑光源,同时也需要考虑环境中的所有曲面和对象与灯光如何相互影响,这一点非常重要。例如,某些曲面阻挡灯光,并在其他曲面上投射阴影;某些曲面很有光泽,我们在它们上会看到其他曲面的反射;某些曲面透明,我们会透过它们看到其他曲面;而且有些曲面会将灯光反射到其他曲面上。
全局照明
考虑模型中曲面间传输灯光方式的渲染算法称作全局照明。3ds Max 提供两种全局照明算法作为其产品级渲染系统的构成部分:光线跟踪和光能传递。
在解释光线跟踪和光能传递如何工作之前,了解灯光在物理世界中如何分布非常有用。例如,考虑如下所示的房间。
由两个灯光照明的厨房
上面的厨房拥有两个光源。灯光的一种理论将灯光看作称为光子的离散粒子,光子从光源发出直到遇到厨房中的某一曲面。根据曲面的材质,一些光子被吸收而另一些散射回环境中。以特定波长运动的光子被吸收,而其他的则不会被吸收,这一事实决定了曲面的颜色。
非常光滑的曲面在一个方向反射光子,并以与光子到达曲面的入射角相同的角度反射。这些曲面称作镜曲面,而这种反射称作镜面反射。镜子是一种完美的镜曲面。当然,许多材质在一定程度上同时显示镜面反射和漫反射。
左图:镜面反射
右图:漫反射
光子从曲面上反射的方式主要取决于曲面的光滑度。粗糙的曲面会向所有方向反射光子。这些曲面就是漫反射曲面,而这一类反射被称作漫反射(如上所示)。用平光漆绘制的墙面就是漫反射表面的一个很好例子。
厨房的最终照明由曲面间的相互作用和光源发出的数以亿计的光子共同决定。在曲面上任何给定点处,光子可能直接从光源到达(直接照明),或者通过在其他曲面上一次或多次反弹而间接到达(间接照明)。如果您站在厨房中,那么房间中少量的光子会进入眼睛并刺激视网膜的杆状和锥状细胞。从效果上来说,这样的刺激会形成大脑所接收的图像。
在计算机图形中,我们将视网膜的杆状和锥状细胞用计算机屏幕的像素来代替。全局照明算法的一个目的是尽可能精确的重新创建在真实环境中所看到的景象。第二个目的是尽可能快地完成任务,理想情况是能够实时(每秒 30 个图像)。到目前为止,还没有某种单独的全局照明算法能够同时实现这两个目标。
光线跟踪
全局照明算法首先开发的一项技术称作光线跟踪。光线跟踪算法在场景中运动的数以亿计的光子中进行识别,我们主要关心的是进入眼睛的那些光子。该算法跟踪从屏幕中每个像素进入 3D 模型的反向光线。这样,我们只计算构建图像所需要的信息。要使用光线跟踪创建图像,对于计算机屏幕上的每个像素执行下列步骤。
- 光线是通过眼睛的位置反向跟踪的,通过监视器上的像素,直到它与一个曲面相交。我们从材质的描述中可以知道曲面的反射率,但我们仍然不知道到达曲面的灯光量。
- 要确定总体照明,我们从相交点开始跟踪光线到环境中的每个光源(阴影光线)。如果到达光源的光线未被其他对象阻挡,则来自光源的灯光用于计算曲面颜色。
- 如果相交的曲面有光泽的或透明,则我们必须要确定在要处理的曲面中或通过这一曲面能看到什么。第 1 步和第 2 步在反射(在透明的情况下,则是透射)方向反复执行,直到遇到另一曲面。后续相交点的颜色也用于计算原始点的颜色。
- 如果第二个曲面也是反光的或透明的,则重复光线跟踪过程,以此类推,直到达到迭代的最大次数或没有更多的相交曲面为止。
光线跟踪:光线通过一个像素从摄影机开始跟踪,经过几何体,然后回到光源。
光线跟踪算法的应用非常广泛,因为它可以建立多种照明效果的模型。它可以精确地实现直接照明的全局照明特性、阴影、高光反射(比如镜子)以及通过透明材质的折射。光线跟踪的主要不足在于即使对中等复杂的环境它也可能处理得非常慢。在 3ds Max 中,会有选择地将光线跟踪用于使用光线跟踪材质的对象上,这些材质将光线跟踪指定为其明暗处理选项。光线跟踪也可以指定为渲染光源投射阴影的方法。
光线跟踪和扫描线渲染的一个共同不足之处在于,这些技术都不考虑全局照明的一个非常重要的特性,即漫反射的相互反射。对传统光线跟踪和扫描线渲染而言,只有直接来自于光源自身的灯光才被精确考虑。但是,正如房间的例子中所示,到达曲面的灯光不仅仅来自于光源(直接照明),这些灯光也来自于其他曲面(间接照明)。例如,如果我们光线跟踪厨房的图像,则阴影中的区域应当以黑色显示,因为这些区域不能由光源直接照明。但是,我们从经验知道,这些区域不可能完全为黑色,因为它们也会接收到来自周围墙壁和地板的灯光。
在扫描线渲染和传统的光线跟踪(在 3ds Max v5 之前的版本)中,间接照明通常是仅通过添加一个任意的环境光值来实现,而此环境光与间接照明的物理现象无关,并且在整个空间中为固定值。因此,扫描线和光线跟踪图像通常看起来过于平面化,尤其是在建筑环境的渲染上,这些建筑环境通常来说大部分都是漫反射曲面。
光能传递
要解决这一问题,研究人员吸收了热学工程的研究成果,开始研究计算全局照明的其他替代算法。在 20 世纪 60 年代初期,工程师们开发了模拟曲面间辐射热传导的方法,以此判断他们的设计在实际应用中的性能(比如熔炉和引擎)。到了 20 世纪 80 年代中期,计算机图形研究人员开始研究这些技术在模拟灯光传播方面的应用。
光能传递,正如该技术在计算机图形世界中的称呼一样,它从本质上与光线跟踪有所不同。光能传递不仅决定场景中每个像素的颜色,也计算环境中所有曲面的强度。通过首先将原始曲面分割为称作元素 的更小曲面的网格来实现这些操作。光能传递算法计算分布在从每个网格元素到每个其他网格元素的灯光量。为网格的每个元素保存最终光能传递值。
光能传递:碰撞到曲面的灯光的光线由多个漫反射光线反射,这些漫反射光线自身可以照明其他曲面。细分曲面可增加解决方案的精确度。
在光能传递算法的早期版本中,必须完全计算网格元素中灯光的分布才能在屏幕上显示有用的结果。即使结果是视图独立的,预处理也会花费很多时间。1988 年,出现了逐步细化技术。该技术可以立即显示可视结果,并在精确度和可视质量上逐步改善。1999 年,出现了一种称作 stochastic relaxation 光能传递(SRR)的技术。SRR 算法组成了由 Autodesk 提供的商业光能传递系统的基础。
集成解决方案
虽然光线跟踪和光能传递算法不同,但它们在许多方面是互补的。每项技术都有其优点和不足。
照明算法 | 优点 | 不足之处 |
---|---|---|
光线跟踪 | 精确的渲染直接照明、阴影、高光反射和透明效果。 有效使用内存 | 计算量相当大。生成图像所需时间受光源数量影响较大。 对每个视图必须重复处理(视图独立的)。 不考虑漫反射的相互反射。 |
光能传递 | 计算曲面间漫反射的相互反射。 为任意视图的快速显示提供视图独立的解决方案。 提供立即可视的结果。 | 3D 网格比原始曲面需要更多的内存。 绘图人工效果比光线跟踪更容易影响曲面采样算法。 不考虑高光反射或透明效果。 |
无论光能传递还是光线跟踪都不能为所有全局照明效果的模拟提供完整的解决方案。光能传递在渲染漫反射到漫反射的相互反射时更有优势,而光线跟踪在渲染高光反射方面有优势。通过使用产品级质量扫描线渲染系统综合两种技术,3ds Max 可以提供这两者的最佳结合。在创建光能传递解决方案后,可以渲染其二维视图。在 3ds Max 场景中,除光能传递所提供的效果之外,光线跟踪还可以提供其他效果:灯光可以提供光线跟踪阴影,而材质可以提供光线跟踪反射和折射。结合了两种技术渲染的场景,比单独使用任一种技术所能得到的场景更真实。
通过将光线跟踪和光能传递相综合,3ds Max 可以提供各种视觉可能性,从高速交互式的照明学习到具有非比寻常的质量和真实感的图像。
请参见
本节内容
- 如何在 3ds Max 中使用光能传递
本主题介绍了如何在 3ds Max 中使用光能传递的概述。
- 光能传递工作流程
本主题介绍了如何设置场景以使用光能传递。考虑内容包括场景的大小以及场景中使用的测量系统、光线和材质。
- 用光能传递设置动画
默认情况下,在当前帧计算光能传递解决方案。如果您正在设置对象动画并且要在每帧执行光能传递解决方案,请在“渲染设置”对话框“公用”面板 “公用参数”卷展栏 “高级照明”组启用“需要时计算高级照明”。
- 光能传递控件
光能传递是用于计算间接光的技术。具体而言,光能传递会计算在场景中所有表面间漫反射光的来回反射。要进行该计算,光能传递将考虑场景中的照明、材质以及环境设置。
- 照明分析(光能传递)
要询问灯光级别、分析数据并生成报告,请使用“照明分析”对话框。此对话框提供有关材质反射比、透射比和亮度比的渲染数据。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论