在数字孪生中,需要模拟真实情况下的光照情况,主要的一些光照是通过系统自带的平行光照射在模型表面来模拟真实情况,还有一些是通过各种额外的灯光组件,以及自发光效果来,共同模拟系统内的光照。
一般3d软件中的光照渲染,都是指定一盏平行光来模拟日光,然后搭配各种形状样式的灯光,比如点光源,区域光,手电筒光等等,这些光照样式,都是一个目的就是模拟真实光照。通过从位置发射一束光线,然后通过计算物体表面的反射信息来生成最终的光影效果,这个过程就被称之为光照渲染。
如果是较小的项目,场景内总体模型面数不高,使用系统自带的实时光照系统,每帧实时计算光照情况,可以模拟出较为真实的光照环境。但是由于是每帧都要计算新的光照信息导致一些复杂场景和大场景中会遇到较大的性能压力。这时候就需要用到光照贴图来模拟光照。
我们在展示模型场景的时候,会发现有大量的物体是一直处于静止状态,只有一小部分物体是处于移动状态的,光照贴图的概念就是让这些静止状态的物体不参与每帧的光照模拟计算,而是通过程序 将这些静止物体的光照信息通过烘焙的方式,画在他们各自的贴图上。
在程序运行时,将这些拥有光照贴图的静态物体,剔除到实时光线计算之外,使用光照贴图来模拟他自身的被光线照射的光影效果,这样能节省大量运行时运算量。
然后通过将实时灯光渲染的光影效果和光照贴图叠加显示,使动态物体和静态物体同步光照情况,这样,使得程序运行更加平稳,能够腾出空间使用更复杂的模型来展示场景。
❖免责声明:所载内容来源网络、微信公众号等公开渠道,转载稿件版权归原作者、机构所有,转载仅供参考、交流等非商业目的,如有侵权,请联系我们删除。