327-Real time rendering-Tomas Moller-Computer Science-1999
327-Real time rendering-Tomas Moller-Computer Science-1999
Barack
2021/04/26
《Real time rendering》,首版于1999年。它讨论了游戏和其他应用程序中使用的实时渲染方法。它还讨论了交互计算机图形学领域的理论框架。
Tomas Moller,曾就读于Lund University,Chalmers University of Technology,UC Berkeley。他主要研究计算机图形学和图像处理。代表作:《Real time rendering》等。
Table of Contents
1 Introduction
2 The Graphics Rendering Pipeline
3 The Graphics Processing Unit
4 Transforms
5 Shading Basics
6 Texturing
7 Shadows
8 Light and Color
9 Physically Based Shading
10 Local Illumination
“Real-time rendering is concerned with rapidly making images on the computer. It
is the most highly interactive area of computer graphics. An image appears on the
screen, the viewer acts or reacts, and this feedback affects what is generated next.
This cycle of reaction and rendering happens at a rapid enough rate that the viewer
does not see individual images, but rather becomes immersed in a dynamic process.”
实时渲染是计算机图形中的一个重要研究课题。外界的光影变化、位置变化,都会影响我们要展现的对象的外观。有时候我甚至觉得,整个现实世界也像一个被实时渲染的对象。
“Movie projectors show frames at 24 FPS but use a shutter system to display each
frame two to four times to avoid flicker. This refresh rate is separate from the display
rate and is expressed in Hertz (Hz). A shutter that illuminates the frame three times
has a 72 Hz refresh rate. LCD monitors also separate refresh rate from display rate.”
无论动画是以什么形式展现出来的,它本质上都利用的是生物的视觉暂留这一特性。假如生物没有这种特性,似乎很难想象这个世界会是什么样子。
“First, we shall explain the mathematical notation used in this book. For a more
thorough explanation of many of the terms used in this section, and throughout this
book, get our linear algebra appendix at realtimerendering.com.”
作者在本书开篇就开始介绍一些基础性的数学公式和定义。计算机图形学,说到底还是一门计算机科学,里面会涉及到大量的数学知识,如果不了解这些数学知识的话,就无法深入的理解计算机图形学,而顶多停留在拿来主义的层面。
“The basic rendering primitives (also called drawing primitives) used by almost all
graphics hardware are points, lines, and triangles.”
再复杂的图形都来自于基本图形的组合与变式。基本元素的变化,形成了变化各异的组合。一生二,二生三,三生万物。从最基本的出发点出发,能实现的,或许超出我们的想象。
“Following well-established computer graphics usage, in this book terms derived from
“shading,” “shader,” and related words are used to refer to two distinct but related
concepts: computer-generated visual appearance (e.g., “shading model,” “shading
equation,” “toon shading”) or a programmable component of a rendering system
(e.g., “vertex shader,” “shading language”).”
Shade,指的是用计算机去模拟物体的外表,shade的算法质量,很大程度上影响了我们试图模拟的物体是否足够逼真。
“The main function of the
pipeline is to generate, or render, a two-dimensional image, given a virtual camera,
three-dimensional objects, light sources, and more. The rendering pipeline is thus the
underlying tool for real-time rendering.”
Pipeline,是一套流程,它探讨的是,如何去渲染物体的流程。这个流程由多个部分组成。
“In the physical world, the pipeline concept manifests itself in many different forms,
from factory assembly lines to fast food kitchens. It also applies to graphics rendering.
A pipeline consists of several stages, each of which performs part of a larger task.”
现代工业中,流水线可能是最能体现Pipeline思想的例子之一。要实现一个大的目标,其中可能涉及到不同的方方面面,这些方方面面必须要像人体的器官协调工作一般相互协助,才能达到设计效果。
“The rendering speed may be expressed in frames per second (FPS), that is, the
number of images rendered per second. It can also be represented using Hertz (Hz),
which is simply the notation for 1/seconds, i.e., the frequency of update.”
渲染其实是一个非常消耗电脑资源的事情。因此要渲染出非常精美的视频,实际上是要付出大量的硬件代价。我在想,我们的国漫产业发展还不够成熟强大,是否一部分原因也是因为我们的经济基础还不够呢?
“The developer has full control over what happens in the application stage, since it
usually executes on the CPU. Therefore, the developer can entirely determine the
implementation and can later modify it in order to improve performance.”
在应用阶段,Shade的开发者决定了如何利用计算机资源,利用多少,怎么利用,从而影响了后续的渲染表现。
“The basic construction of the rendering pipeline, consisting of four stages: application,
geometry processing, rasterization, and pixel processing. Each of these stages may be a pipeline in
itself.”
应用,几何处理,栅格化,像素处理。这4个重要环节构成了渲染过程中最重要的组成部分。