GPU Gems1 - 10 电影级的光照

本文介绍了简化版UberLight光照模型的实现,该模型基于Ronen Barzel提出的理论,被Pixar应用于多部电影中。文章详细阐述了模型的运作原理,包括表面特性计算、光源评估及表面响应计算。此外,还探讨了如何通过调整参数来控制光照效果,如颜色、形状、阴影和纹理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本章中介绍了一个的简化的uberlight(可理解为“全能光照”)实现,此光照shader根据Ronen Barzel(1997,1999)提出的照明模型编写而成。而该模型的超集已由Pixar动画开发,并应用于《玩具总动员》、《怪物公司》、《海底总动员》等一系列的迪士尼电影中。本章所对该光照模型的尝试,旨在提供一套全面的光照控制参数,以涵盖灯光美术师日常使用的大部分效果。

首先,该章中呈现的Shader只模拟光照场景光源的形成和控制,不包括如何模拟表面细节和光反射行为的复杂性。

大体上,用于电影产品的照明模型会进行两种操作,类似于显示在这里的伪代码:

color illuminationModel()
{
   Computer the surface characteristic
   For each light
   {
        Evaluate the light source (评估光源)
        Compute the surface response(计算表面响应)

   }
}

首先,通过这些方式计算表面着色信息:运行各种纹理查找(texture lookups),在网格上插值(interpolating values over the mesh),计算程序模式(computing procedural
patterns)等。然后在照明物体的每个光源上循环,计算出它的贡献。我们通过对每个光线计算光的颜色,然后计算表面对照明的响应来进行上述操作。

原文中给出了一个Shader源代码,该Shader用于计算塑料(plastic)材质在只有一个光源贡献的反射模型。,可以很容易将它扩展为更通用的多光源和更多表面的解决方案。

该Shader为美术师提供了各个方面的照明控制:选择(指定物体是否响应接受光照),颜色,形状,阴影和纹理,而阴影选项中包括明暗度、色调、反射、阴影贴图、阴影模糊等参数。

 

下面两幅图说明了uberlight 的使用效果。照明来自Pixar短片“Geri's Game”中的人物头部。

 图 (a)Geri由一个光源照明;(b)改变光的权重,修改反射高光对比度;(c)改变阴影颜色,加强阴影;(d)改变谷仓形状(类似窗户一样的遮挡物),创建更戏剧化的姿态;(e)使用一块模糊的纹理cookie,丰富图像;(f)夸大透射的cookie的对比,创建像外星人一样的效果

                                              (a)常态 (b)黑色电影(noir)的高反差 (c)柔和的光线

要点总结

 灯光的分布塑形:超级椭圆和基于距离的变形

 阴影贴图

 纹理投射cookies

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值