
本人做图采用VR渲染器,渲染习惯是先跑小图,保存光子再跑大图。但问题出来了。
1个回答
2013-06-10
展开全部
这么简单还用问?对于光子的问题,并不是大家通常认为的那样,小图好就大图好。光子的分辨率是固定,当你放大的时候,当然就会出现损失。
比如,对于1000*1000,我们渲染光子的时候使用-2-2渲染,那么光子的分辨率则为1000*2^-2*1000*2^-2=250*250分辨率的光子。我们用这个光子去出1000的小图,这个时候,细小的东西是看不清楚的,所以即便是250的光子小图整体看上去还可以,但是你用250分辨率的光子去渲染3000的成图,那么相当于成图上大约10*10范围的像素点使用一个像素点的光子采样,然后没有采样到的细节,进行插补运算。这时候,光子失真已经很大了,3000一条横线像素上所使用的2750个像素的光子采样都是通过计算机将相邻的两个光子像素点进行插补得到的,也就是用2个数据插补得到中间剩下的9个光子像素点。
对于楼上说的,是不正确的。预渲染光子后,成图使用从文件模式时,光子是不会再被计算的,那个时候你乱改光子的参数对成图没有影响,如果你是使用发光贴图+灯光缓存。成图的时候你甚至可以直接关闭二次反弹,因为在第一次计算光子的时候,所有的GI信息都呗写入到了光子图中,如果你开启二次反弹,那么灯光缓存会被再计算一次,当然,这样会时GI信息更加精确。
所以,第一,光子的质量与精确度与图像采样有关,对于复杂的场景,建议使用自适应DMC,有的翻译为自适应蒙特卡洛采样器,可以将最大细分值加大,做动画为了高精确度以避免光子闪烁,甚至会调到100。包括成图的质量与采样也有很大的关系,渲染成图的时候亦如此。
第二,提高光子图的分辨率,可以在算光子图的时候把图像适当加大,或者提高最大比率以及半球细分来提高光子的精确度和质量。
希望能帮到你~
比如,对于1000*1000,我们渲染光子的时候使用-2-2渲染,那么光子的分辨率则为1000*2^-2*1000*2^-2=250*250分辨率的光子。我们用这个光子去出1000的小图,这个时候,细小的东西是看不清楚的,所以即便是250的光子小图整体看上去还可以,但是你用250分辨率的光子去渲染3000的成图,那么相当于成图上大约10*10范围的像素点使用一个像素点的光子采样,然后没有采样到的细节,进行插补运算。这时候,光子失真已经很大了,3000一条横线像素上所使用的2750个像素的光子采样都是通过计算机将相邻的两个光子像素点进行插补得到的,也就是用2个数据插补得到中间剩下的9个光子像素点。
对于楼上说的,是不正确的。预渲染光子后,成图使用从文件模式时,光子是不会再被计算的,那个时候你乱改光子的参数对成图没有影响,如果你是使用发光贴图+灯光缓存。成图的时候你甚至可以直接关闭二次反弹,因为在第一次计算光子的时候,所有的GI信息都呗写入到了光子图中,如果你开启二次反弹,那么灯光缓存会被再计算一次,当然,这样会时GI信息更加精确。
所以,第一,光子的质量与精确度与图像采样有关,对于复杂的场景,建议使用自适应DMC,有的翻译为自适应蒙特卡洛采样器,可以将最大细分值加大,做动画为了高精确度以避免光子闪烁,甚至会调到100。包括成图的质量与采样也有很大的关系,渲染成图的时候亦如此。
第二,提高光子图的分辨率,可以在算光子图的时候把图像适当加大,或者提高最大比率以及半球细分来提高光子的精确度和质量。
希望能帮到你~
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |