文章目录
1 Real-Time High Quality Rendering的含义
1.1 Real-Time 实时
实时包含两个含义:速度和交互性。
1.1.1 Speed 速度
- 对于一般应用,FPS>=30,即称为实时(Real-Time)。
- 对于AR/VR应用,FPS>=90,称为实时。
Interactive FPS:可以接受的速度(比如玩游戏卡成ppt也是这个层级)。
1.1.2 Interactivity 交互性
要求每帧都能动态生成。
1.2 High Quality 高质量
真实性 Realism: 使用先进的方法使得渲染更加真实
可靠性 Dependability:all-time correctness (exact or approximate),no tolerance to (uncontrollable) failures. 即在实时渲染里对失误容忍度更低。
1.3 Rendering 渲染
将3D场景渲染为2D图像。
2 涉及内容
- 阴影。
- 全局光照。
- 基于物理的着色。
- 实时光线追踪。
2.1 目录
- Shadow and Environment Mapping 实时软阴影的渲染;
- Interactive Global Illumination Techniques 环境光照;
- Precomputed Radiance Transfer 基于预计算或无预计算的全局光照;
- Real-Time Ray Tracing 实时光线追踪
- Participating Media Rendering, Image Space Effects, etc.参与介质渲染、图像空间效果等。
- Non-Photorealistic Rendering 非真实感渲染
- Antialiasing and supersamping 抗锯齿和过采样
2.2 怎么学
理解科学与技术之间的差异
- 科学!=技术 Science != technology
- Science == knowledge
- Technology == engineering skills that turn science into product
Real-time rendering = fast & approximate offline rendering + systematic engineering
实时渲染技术,工业界远远领先学术界。
2.3 前置
- Games101或其达相关前置知识
- 基础的微积分知识
- 基础的OpenGL用法
3 Outline
3.1 动机
- 计算机图形学能够产生相片级真实感图像,但是很难兼顾速度与质量。准确的算法(离线渲染)是非常慢的。
- 实时渲染要在合理的近似下,找到能很快的运行且近似的结果。
3.2 实时渲染的发展史
1、20年前,具有简单纹理映射、假阴影的交互式 3D 几何。 (OpenGL, DirectX)
2、10年前
- 自可编程着色器出现以来的巨大飞跃(2000 年)
- 复杂的环境光,真实的材质(天鹅绒,缎子,油漆),软阴影。
3、今天
- Stunning graphics
- 实时渲染广泛应用到VR甚至电影中
4、 未来
构建真实的世界。
3.3 技术和算法的里程碑
1、可编程图形硬件(shaders)(20年前)
2、预计算的方法(15年前)
- 预先计算复杂的视觉效果是(部分)。
- 最小化运行时的渲染成本。
- 预计算方法的应用:Relighting,Fix geometry Fix viewpoint Dynamically change
lighting。
3、Interactive Ray Tracing(8-10年前:CUDA+OptiX)
- 硬件发展允许在 GPU 上以低采样率进行光线追踪(~1 samples per pixel (SPP))
- 后期处理降噪