连更两篇,冲鸭!
业余翻译,若有不周到之处,还请多多指教!
实时渲染(第四版)Real-Time Rendering (Fourth Edition)
第15章 非真实感渲染 Chapter 15 Non-Photorealistic Rendering
15.3 笔触表面样式化 Stroke Surface Stylization
尽管卡通渲染是一种尝试笔触模拟的流行风格,但是也有无数其他风格可以应用于曲面上。效果的范围从修改逼真的纹理[905、969、973]到使算法从程序到帧地生成几何装饰[853、1126]。在本节中,我们简要地研究与实时渲染相关的技术。
Lake等人 [966]讨论了使用漫射着色项来选择在表面上使用哪种纹理。随着漫射项变暗,将使用具有较暗印象的纹理。将纹理与屏幕空间坐标一起应用以呈现手绘外观。为了进一步增强草绘外观,还在屏幕空间中将纸张纹理应用于所有表面。参见图15.20。这种算法的主要问题是会造成淋浴门效果(shower door effect),在动画过程中,对象看起来像是通过图案玻璃观看的。对象感觉好像它们在纹理中游动。Breslav等人 [196] 通过确定哪种图像变换最匹配某些基础模型位置的运动来维持纹理的二维外观。这样可以保持与填充图案基于屏幕的性质的连接,同时提供与对象的更牢固的连接。
图15.20. 通过使用纹理调色板,纸张纹理和轮廓边缘渲染生成的图像。(Reprinted by permission of Adam Lake and Carl Marshall, Intel Corporation, copyright Intel Corporation 2002.)
一种解决方案是显而易见的:将纹理直接应用于表面。挑战在于,基于笔触的纹理需要保持相对均匀的笔触厚度和密度,才能令人信服。如果纹理被放大,则描边显得太粗;如果缩小,则描边要么模糊不清,要么细而嘈杂(取决于是否使用了mipmapping)。Praun等人 [1442]提出了一种实时的方法,用于生成笔触纹理化的mipmap,并将其以平滑的方式应用于表面。这样做可以随着对象距离的变化保持屏幕上的笔画密度。第一步是形成要使用的纹理,称为色调艺术贴图(tonal art maps,TAM)。这是通过将笔触绘制到mipmap级别中来完成的。参见图15.21。克莱因等人 [905]在他们的“艺术贴图”中使用了一个相关的想法来维持NPR纹理的笔触大小。放置这些纹理后,可通过在每个顶点所需的色调之间进行插值来渲染模型。该技术产生具有手绘感觉的图像 [1441]。参见图15.22。
图15.21. 色调艺术贴图(tonal art maps,TAM)。笔触被绘制到mipmap级别中。每个mipmap级别包含从纹理到其左侧和上方的所有笔触。这样,在mip级别和相邻纹理之间的插值是平滑的。(图片由普林斯顿大学Emil Praun提供。)
图15.22