|
本帖最后由 375724685 于 2010-4-23 22:30 编辑 I3 `, F3 ]2 ~+ q6 U( R1 n# h8 G 在上一篇文章中结合论坛里的暴牙龙、coolmoon、henry0421他们的帖子分析了一下提高vr速度的一些经验和参数,这次我们对照Aparkey 的学习笔记来研究一下。其中他提及的大部分参数都经本人亲自验证过,并总结出了一些经验参数可以供自己以后出图参考。 0 W5 w0 j3 P* t4 L" F8 m+ ] 上次对于抗锯齿对vr速度影响讲得比较多,那么这次我就GI对速度影响来分析一下。主要是针对光照贴图和灯光缓存。 一、Irradiance map(发光贴图) 大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比 渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。 9 x; Q' r A$ v$ N; @# R 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/ \0 e6 z: d" `. d 17.5s;-7/17.8s;-6/18.1s;-5/17.7s,-4/17.3;-3/17.4s;-2/18.3s;-1/22.5s. 1 ~1 ^- u {+ j6 R3 i4 @" l 虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。 min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4 ' ]5 F6 M& U4 q0 ~ (细节不多时可以用-3),而最终出图可以用0(-1)。 HSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80 0 n' [' o. V' y% J W- S Interp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。 % K3 D3 W$ }9 Y Clr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。 4 m' U: j$ N; J) N$ v2 K Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢 - ?* U' \1 p @ Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大 . ^( N4 g a7 y$ f" [ Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。 4 o" X; ?* ?7 l8 t, ? 二、Light cahe(灯光缓存) ! K9 |& W0 M t) T( @" }0 ^3 M9 E 灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。 , ~5 @+ o; j1 n: s" s) f( [8 t$ U$ R Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。 Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。 Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15 Filter下的Interp 9 e! I) B9 b. ]& `: j2 ` Z/ { samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5 此主题相关图片如下: 就打了一个天光,没优化参数,蜗牛机器渲染的,放上来提个醒 , q+ G( _1 ^2 J: b' u( {8 f 提高VR渲染速度的最好方法(经典转载)VR的基本渲染方法掌握起来并不难,但是最迫切需要解决的问题是VR的出图速度问题。动则需要数小时的渲染时间真的是很难以接受,我们从三个影响速度的参数结合网上一些高手的教程来分析一下。 一、Irradiance map(发光贴图) 7 V. R! i3 c6 ~, h; [. _% i: K 二、Light cahe(灯光缓存) 三、图形抗锯齿方面Image sampler (Antialiasing) $ |9 C: d* R6 F 一、Irradiance map(发光贴图) 大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比 . D c+ [/ s& I. V- L" Q 渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。 $ H& U: U3 k4 h; a b6 ~# R - R a) s; n$ v% B% `; V 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 ]% K7 K; i% P* h 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. ; A8 z S* W- \9 r+ N 虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。 * z& g$ O0 w+ i1 t W ( X/ ]" h+ g- o) x2 q min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4 (细节不多时可以用-3),而最终出图可以用0(-1)。 6 o1 ]7 ^3 u) l! @ ( z0 G) x7 o0 Q9 J+ u) R; } HSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80 % n' y+ b5 J c2 {" q! b6 y3 B$ J Interp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。 2 r" R) \* Y' ~& x& D6 Y' _ . W- q: m4 |" P \) N) u Clr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。 ; e: y; S" Z% k' e3 y7 p2 y9 v3 ~9 \ Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢 9 V; p8 k+ \( E! S; k5 _. u% y4 M Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大 1 R9 D- p) C$ v! {6 P 1 U9 v- a! c9 I! \. Z( ~4 v Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。 3 `" z6 _# }4 N# ~8 Y5 t |6 u 二、Light cahe(灯光缓存) . H" z! D5 Y7 r6 z5 C2 v4 t 灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。 6 ?3 m8 E- d' A6 P+ i Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。 ( w7 D- G: F$ Z+ v Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。 : e. C6 o/ V, O$ j& ]3 a/ ]4 r. a 2 U- a- e+ A" u' F Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15 % j) p3 q( s5 k/ k( l7 i Filter下的Interp samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5 / v* C) F" l2 {9 k- m# Y 7 O/ A: W' p( o! `- a3 B 图形抗锯齿方面Image sampler (Antialiasing) 1、无反射模糊,图像质量相似的情况下,adaptive subdivision最快 比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate-1/2 0 w3 s+ x4 T d* E 8 g, M" v) M) [+ U9 V 2、大量粗糙表面多bump贴图,simple two-level 最快 1 m# h9 Y- Z! o2 P" M* L 比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate0/2,threshold=0.05 9 w8 F2 _4 ^# G9 n' z9 w {* M1 Q0 O9 O, X& n 3、如果场景中有大量模糊效果,包括运动模糊,模糊反射,高光模糊,景深等,Fixed是最快的 / A( u3 u! B; I E4 ^% v 如果场景中有大量凹凸效果,包括bump贴图,置换,noise等,adaptive QMC或者adaptive two-level是最快的。其他情况用adaptive subdivison会比较快。 根据不同的情况选择不同的抗锯齿这个很重要!! 0 G( y7 S( \# W3 U' f% X - H R9 z% M) g I/ b1 n0 v# K/ G 另外几个关键的参数: / M2 y% H7 X0 V3 n+ P, j threshold这个值对速度的影响非常大。 3 a l) k. i3 a0 b( D. Y 在adaptive subdivison Clr thresh默认为0.1,测试改为1,速度提升很多质量也可以接受 在adaptive QMC ,在rQMC面板的Noise threshold默认为0.005测试改为0.1,速度很快质量还可以。 如果在adaptive rQMC image sampler 里勾选Use QMC sampler thresh的话,那么这里的域值采样直接由rQMC面板的Noise threshold决定。 如果没有勾选则有Clr thresh来决定,默认0.01测试改为0.1,速度快质量也可以接受 Object outline: - Z% d% F2 v) j7 }6 L4 I 9 S* u' t4 B* N; G7 S* u3 I; k( E 当场景有大量细小物体,抗锯齿方式是adaptive subdivison时,如果勾选Object outline,那么渲染会非常慢。这个时候我们不要勾选object outline而用Clr threshold来控制图象质量 Nrm thresh:这个是特定的法线区域采样,如果对阴影要求不高的情况把Clr threshold设置一个较大的值5,勾上object outline和Nrm threshold这样速度也有不小的提升。 8 W* E4 ^. r( D% I 7 D0 R, M/ H4 d# s: R$ U- S3 }" Y 与渲染速度有关的还有发光贴图里的二个参数: ! V l$ ]+ C- b/ j. a/ { 5 p$ E J `. {6 v, k# A Interpolation type插值类型和Sample lookup采样查寻 5 r; a" X, u7 w+ z( K* i$ h 一般只要将Interpolation type设为Least squares fit(最小平方适配法), : f7 k+ ~! b& w* @* k) M0 F 而Sample lookup设置为Precalculated overlapping(预先计算的重叠),就可以满足我们的大多数要,且速度也很快。 ! i4 w1 i7 ]3 V9 S/ ] 如果质量达不到要求就再试一试其它参数设置(记住Nearest只适合用于草图预览) & A. Y" D: B" B0 G% ] . ?+ R1 s* C* T3 h* U Check sample visibility检查样本可见性,可以减少漏光现象,但速度会减慢 关于coolmoon的帖子: ( j' ?" Z) r/ j( D" G' f7 I 提高速度的方法:把所有面积较小的物体选中,把它们的全局GI关闭,只让面积比较大的几个物体来计算全局GI ) \* i! R" |8 j2 r 他提及的抗锯齿提速前面已经分析过了就不再总结了。 5 r5 M0 @1 [: {! z1 p9 N$ ~& Q 关于暴牙龙的贴子: Y7 d* S9 s6 s4 @" b 1。不要用太多的灯光反弹 2。不要用太高的发光贴图设置渲染大分辨率的图 " v% z# w2 W2 R) Q) B" P 3。经常保存发光贴图 4 i2 ~% v: `: b: N2 g 4。弄个大点的内存 ' O3 b; K5 F5 ]/ G) v8 N* k7 v" A1 | 5。抗拒齿不要太高 6 m* x0 d% w1 d$ U4 C 6。不要用太高的反射折射级别 7。用透明贴图的采样不要太高 6 F3 ~( s& Z& D7 m1 Q" b 8。把不重要的物体的GI采样强制降低 9。不要用凹凸贴图和模糊一起用 - D, y1 {2 u( u% Q; F* I9 @ 10。不要渲染太高分辨率的图,够用就行 ' Q. j6 K A% x( b0 v 11。能用PS的就PS,比你用3天MAX渲染快多了 ; ?/ c- c' p: s5 B+ l 这是他的原话!! ! B' c2 s5 M3 v8 O' z/ l : j4 H0 B9 N( H! M# S 下面是经验参数: 0 G* }( i: G/ Y( j, z( p- ^: q 1、木地板模糊反射0.85 和3,反射次数调为1 2、最终光子图的 IM参数rate-3/0,Clr threshold=0.2,Nrm threshold=0.2,HS=50,IS=20 ) ]( `7 K4 `/ R0 e( ?4 }) P9 e/ C0 h 3、用vr灯模拟天光是勾上sotre with irradiance map速度会快点 % q( k, W+ r" x, ~0 \* V1 S 4、算好光子图以后再加对场景影响不大的灯 * u, u! w4 U: E& d$ r 5、关了辅助灯计算光子图,要正式渲染时再打开,若想效果更好点可以打个低亮度的vr灯模拟光子反弹效果 |
精华推荐
换一换




meinvwoding