|
本帖最后由 375724685 于 2010-4-23 22:30 编辑 / X+ ?+ f5 ?/ n9 D+ Q 在上一篇文章中结合论坛里的暴牙龙、coolmoon、henry0421他们的帖子分析了一下提高vr速度的一些经验和参数,这次我们对照Aparkey 的学习笔记来研究一下。其中他提及的大部分参数都经本人亲自验证过,并总结出了一些经验参数可以供自己以后出图参考。 # g$ R1 h* d% C; K4 H: H8 N" U1 Y 上次对于抗锯齿对vr速度影响讲得比较多,那么这次我就GI对速度影响来分析一下。主要是针对光照贴图和灯光缓存。 0 \2 t9 Z9 m' m" h4 _ 一、Irradiance map(发光贴图) 大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比 渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。 max=-1,min=-10/9.9;-9/9.75s;-8/ 9.73s;-7/10s;-6/10.3s;-5/10.0s,-4/9.8s;-3/9.85s;-2/10.45s;-1/12.55s max=0,min=-10/17.3s;-9/17.3s;-8/ / _: ^- ?7 C* q$ C% u; v 17.5s;-7/17.8s;-6/18.1s;-5/17.7s,-4/17.3;-3/17.4s;-2/18.3s;-1/22.5s. 虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。 , D- N/ r c! D8 \ min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4 (细节不多时可以用-3),而最终出图可以用0(-1)。 HSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80 * ~# P0 h1 X: E1 V Interp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。 ' I" M4 }& @9 U, x* b Clr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。 Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢 Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大 Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。 二、Light cahe(灯光缓存) 灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。 Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。 7 c& |* E$ \2 A Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。 ( p4 R/ V1 o; |. g; t- K Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15 _* v) K% ~; z- E Filter下的Interp 9 |# `6 ?' J7 e samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5 此主题相关图片如下: & x5 T- S( u/ {3 W 就打了一个天光,没优化参数,蜗牛机器渲染的,放上来提个醒 ) `: ^7 O4 C) S% E% E: \( K% l . W3 C! l: u7 g + g, n; m3 I3 h 提高VR渲染速度的最好方法(经典转载)VR的基本渲染方法掌握起来并不难,但是最迫切需要解决的问题是VR的出图速度问题。动则需要数小时的渲染时间真的是很难以接受,我们从三个影响速度的参数结合网上一些高手的教程来分析一下。 & `- C' q( B, n- m7 \ 一、Irradiance map(发光贴图) 二、Light cahe(灯光缓存) 三、图形抗锯齿方面Image sampler (Antialiasing) 7 u) [" _7 K; z% c+ L 一、Irradiance map(发光贴图) 大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比 9 C9 c) } t) N 渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。 5 l# N0 }" ~- y: K8 w . {; s7 M+ s2 \" n- F4 X/ | max=-1,min=-10/9.9;-9/9.75s;-8/ 9.73s;-7/10s;-6/10.3s;-5/10.0s,-4/9.8s;-3/9.85s;-2/10.45s;-1/12.55s max=0,min=-10/17.3s;-9/17.3s;-8/ 17.5s;-7/17.8s;-6/18.1s;-5/17.7s,-4/17.3;-3/17.4s;-2/18.3s;-1/22.5s. % \$ Q# ]# t5 N! ? 虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。 ! E1 k2 X& b# T3 ^4 s min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4 (细节不多时可以用-3),而最终出图可以用0(-1)。 5 ]. E3 A' H) Q1 J HSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80 Interp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。 8 O5 F$ h4 w' b+ j% N1 i- t4 t Clr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。 Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢 0 o' J- C6 H5 v$ l) p3 n/ p Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大 5 r1 n) u; n: M# t* c" _; N. i0 c- Q Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。 7 G! c9 P; u6 c* b7 @6 X " a" m4 G+ E; s* l& A8 U ' C: ?! G. q+ w( w3 f 二、Light cahe(灯光缓存) # f* T8 v7 |$ S # U1 s' y9 `: Q1 d' p, i# k 灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。 Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。 Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。 * A: i7 s* t8 m `1 J' {8 ]4 Y Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15 Filter下的Interp samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5 % O/ g9 H$ p7 ?7 | 图形抗锯齿方面Image sampler (Antialiasing) ! }# Q( R2 T/ ~ N7 B 1、无反射模糊,图像质量相似的情况下,adaptive subdivision最快 比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate-1/2 5 j' q& f/ J" a/ f) Y2 F 9 _- N ]1 L$ z- P9 P 2、大量粗糙表面多bump贴图,simple two-level 最快 比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate0/2,threshold=0.05 $ K' j* G9 J$ f+ Q, A3 |* h / ^ a( Q- o/ x2 S: _ 3、如果场景中有大量模糊效果,包括运动模糊,模糊反射,高光模糊,景深等,Fixed是最快的 如果场景中有大量凹凸效果,包括bump贴图,置换,noise等,adaptive QMC或者adaptive two-level是最快的。其他情况用adaptive subdivison会比较快。 8 h7 r" ]% e; j4 i, B( h * _% f( m; w! z# R! ~ 根据不同的情况选择不同的抗锯齿这个很重要!! $ _+ u3 F9 w2 w 另外几个关键的参数: threshold这个值对速度的影响非常大。 9 \ n+ [6 R$ D% a' z ) R# s6 B, u/ t9 }8 `6 B7 [ 在adaptive subdivison Clr thresh默认为0.1,测试改为1,速度提升很多质量也可以接受 0 s9 ?! s6 c: z) r. V% _ 在adaptive QMC ,在rQMC面板的Noise threshold默认为0.005测试改为0.1,速度很快质量还可以。 , L2 ?* ?* }+ G* ^+ I2 Z( k6 _. } 如果在adaptive rQMC image sampler 里勾选Use QMC sampler thresh的话,那么这里的域值采样直接由rQMC面板的Noise threshold决定。 1 K: M' _/ T; q; b r) x9 @ 如果没有勾选则有Clr thresh来决定,默认0.01测试改为0.1,速度快质量也可以接受 ; I& ?, g! _9 }2 \3 l; w. @6 h Object outline: / n* N7 Q" y) o8 O% f 当场景有大量细小物体,抗锯齿方式是adaptive subdivison时,如果勾选Object outline,那么渲染会非常慢。这个时候我们不要勾选object outline而用Clr threshold来控制图象质量 t: U$ r+ A6 \) Q % l: u4 `: e2 ?5 B0 A/ v Nrm thresh:这个是特定的法线区域采样,如果对阴影要求不高的情况把Clr threshold设置一个较大的值5,勾上object outline和Nrm threshold这样速度也有不小的提升。 2 Z# z" r) h( @( B4 H 与渲染速度有关的还有发光贴图里的二个参数: 3 z) D5 w9 U7 k: O7 j) j Interpolation type插值类型和Sample lookup采样查寻 一般只要将Interpolation type设为Least squares fit(最小平方适配法), $ N5 c" S8 L; F- D& y2 |; x& ]: u4 P 而Sample lookup设置为Precalculated overlapping(预先计算的重叠),就可以满足我们的大多数要,且速度也很快。 & w, W+ }8 ~0 R 如果质量达不到要求就再试一试其它参数设置(记住Nearest只适合用于草图预览) 8 r; [- H+ i8 L* D/ h: z Check sample visibility检查样本可见性,可以减少漏光现象,但速度会减慢 . T% R' M7 d! w9 @5 e: U6 Y 关于coolmoon的帖子: : b* Z& B# |$ N* a4 S 提高速度的方法:把所有面积较小的物体选中,把它们的全局GI关闭,只让面积比较大的几个物体来计算全局GI 他提及的抗锯齿提速前面已经分析过了就不再总结了。 关于暴牙龙的贴子: # Z, ?$ r" l4 |8 S( @( E 1。不要用太多的灯光反弹 * ?. ~- y! W0 n% O$ v% R, X. F 2。不要用太高的发光贴图设置渲染大分辨率的图 : H% W B2 J8 Z! p9 B! ^" D7 A 3。经常保存发光贴图 1 x+ H) i$ s& a2 ` 4。弄个大点的内存 / G& k" u2 D$ k4 y) n. ~ 5。抗拒齿不要太高 6。不要用太高的反射折射级别 ' [' ~+ x M" O4 ~9 F7 s 7。用透明贴图的采样不要太高 8。把不重要的物体的GI采样强制降低 9。不要用凹凸贴图和模糊一起用 * a4 h2 S$ k' H4 D( @/ P& C 10。不要渲染太高分辨率的图,够用就行 11。能用PS的就PS,比你用3天MAX渲染快多了 6 H& K! Y! U* C& @7 r ( E6 n( R- R- v9 h* E 这是他的原话!! 下面是经验参数: 3 q6 T$ L7 S$ h+ B3 {1 p! J- A& S: P w! n/ M) L9 m* R9 E3 h3 { 1、木地板模糊反射0.85 和3,反射次数调为1 2、最终光子图的 IM参数rate-3/0,Clr threshold=0.2,Nrm threshold=0.2,HS=50,IS=20 ; Y- @2 i2 e# ^4 n( z( D 3、用vr灯模拟天光是勾上sotre with irradiance map速度会快点 # C% N4 O- N; S$ |$ m9 z 4、算好光子图以后再加对场景影响不大的灯 , v; C0 G, w; M3 ?$ d 4 c$ b% }5 r b3 _8 n; \- \ 5、关了辅助灯计算光子图,要正式渲染时再打开,若想效果更好点可以打个低亮度的vr灯模拟光子反弹效果 |
精华推荐
换一换


meinvwoding