VR的基本渲染方法已经掌握,虽然材质和灯光方面还有许多不足,但是当前最迫切需要解决的问题是VR的出图速度问题。动则需要数小时的渲染时间真的是很难以接受,不管是练习还是真正的做方案都是漫长的等待,这样修改起来也不方便。因此当务之急是要弄清楚影响VR速度的根本原因,优化参数。
) X: } c; Q) m& i3 Y! S最近的几个例子来看,GI的时间都不长,就是抗锯齿出图的时间太长了。可能我做的都小场景,等大场景灯光比较多的时候跑光子图也是很慢的。 我们来总结一下:+ @* K% f9 B a r8 B; L, D
图形抗锯齿方面Image sampler (Antialiasing); a$ L' x% N: x8 c9 |
1、无反射模糊,图像质量相似的情况下,adaptive subdivision最快+ a3 S: d) z9 b2 h! _! u
比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate-1/2
) c m. S7 J5 c2、大量粗糙表面多bump贴图,simple two-level 最快
9 x" b/ a# ^6 Q/ A u+ \$ J7 W: o$ s比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision
: v/ A8 d- i& p5 c ]4 f! `rate0/2,threshold=0.05
% v1 ?5 r9 ^ b+ `5 G4 I1 Q3、如果场景中有大量模糊效果,包括运动模糊,模糊反射,高光模糊,景深等,Fixed是最快的
+ p7 W+ J- I. B3 m如果场景中有大量凹凸效果,包括bump贴图,置换,noise等,adaptive
5 R; y+ ^: _) \3 ?QMC或者adaptive two-level是最快的。其他情况用adaptive subdivison会比较快。
& E, |* @7 O3 [根据不同的情况选择不同的抗锯齿这个很重要!!1 z: w4 Z6 O- R2 w w
$ d1 ~$ N+ j3 ^5 D5 C另外几个关键的参数:9 n$ u: Q5 M9 }/ ~# t* J
threshold这个值对速度的影响非常大。
. [9 W: c. o. \. L' j在adaptive subdivison Clr thresh默认为0.1,测试改为1,速度提升很多质量也可以接受- m( D4 I6 l5 y; `0 Z0 j
在adaptive QMC ,在rQMC面板的Noise + b9 p6 h- ?' t7 t. ~: v
threshold默认为0.005测试改为0.1,速度很快质量还可以。
9 y. p( I7 S" e3 ~如果在adaptive rQMC image sampler 里勾选Use QMC sampler
5 r+ O U, D" C$ R) u7 Cthresh的话,那么这里的域值采样直接由rQMC面板的Noise threshold决定。
# X. R* B7 b1 \% b如果没有勾选则有Clr thresh来决定,默认0.01测试改为0.1,速度快质量也可以接受
W- g7 y" J! ?% H( l. t0 aObject outline:# x4 g: {4 P3 \ W. m
当场景有大量细小物体,抗锯齿方式是adaptive subdivison时,如果勾选Object 7 T9 ]1 i! e( q D3 Y* Z1 h6 `3 j
outline,那么渲染会非常慢。这个时候我们不要勾选object outline而用Clr threshold来控制图象质量
5 k. P1 h8 R# R8 MNrm thresh:这个是特定的法线区域采样,如果对阴影要求不高的情况把Clr
+ Y, ]( B9 D& W/ r( k9 g. o; dthreshold设置一个较大的值5,勾上object outline和Nrm threshold这样速度也有不小的提升。" U6 Z1 N4 x( W2 Y
与渲染速度有关的还有发光贴图里的二个参数:# k+ m$ `+ w2 }& \9 J* R
Interpolation type插值类型和Sample lookup采样查寻7 e; o1 E* F* e" L' k% Y
一般只要将Interpolation type设为Least squares fit(最小平方适配法),
' G8 A: F' o" r而Sample lookup设置为Precalculated
0 n% Z$ a0 x& `3 Q9 noverlapping(预先计算的重叠),就可以满足我们的大多数要,且速度也很快。
3 L8 J1 I; A$ [ u( G如果质量达不到要求就再试一试其它参数设置(记住Nearest只适合用于草图预览)
8 z+ a+ l2 M/ W1 \9 b8 qCheck sample visibility检查样本可见性,可以减少漏光现象,但速度会减慢
8 G& u# n ?: w0 ]& C关于coolmoon的帖子:
( v0 ^2 ?3 `& u% T' E提高速度的方法:把所有面积较小的物体选中,把它们的全局GI关闭,只让面积比较大的几个物体来计算全局GI4 X$ e8 |* e5 D7 q- k1 g
他提及的抗锯齿提速前面已经分析过了就不再总结了。
# ~+ n4 |$ O' V- w2 O9 P1 f# w关于暴牙龙的贴子:3 e. q) U0 P8 U8 s6 _2 n5 o) k
1。不要用太多的灯光反弹
; j+ N/ B: l9 O; ~; J8 H' T+ F8 j% }2。不要用太高的发光贴图设置渲染大分辨率的图
/ V% }5 Y5 ?; ?2 |' V( a2 a3。经常保存发光贴图
1 W7 h- O# z# F& n. h0 H! c4。弄个大点的内存3 ?7 j6 v+ l2 p; A" y
5。抗拒齿不要太高
2 X8 Q) ?5 U* v+ N6。不要用太高的反射折射级别
# @, l/ ^/ [! a6 y/ p0 s( V7。用透明贴图的采样不要太高 ' r8 S: w/ ~) ^% U: [/ \8 I
8。把不重要的物体的GI采样强制降低 1 L* E0 h- w1 ?* S& s
9。不要用凹凸贴图和模糊一起用
: {& R3 X" [% M- P8 P/ J10。不要渲染太高分辨率的图,够用就行
0 \) g" P- n8 a* a* v9 z( Y11。能用PS的就PS,比你用3天MAX渲染快多了' g. W4 O8 o% k
这是他的原话!!
/ c5 F2 t/ ]1 n) [9 `' z6 R下面是经验参数:' T1 ~$ F7 T o1 c) u8 f
1、木地板模糊反射0.85 和3,反射次数调为1
) W2 E1 `0 |- V2、最终光子图的 IM参数rate-3/0,Clr threshold=0.2,Nrm y* R9 V" O( A6 i0 N |! {; P% Z) A
threshold=0.2,HS=50,IS=20
' @- B. _2 d- S8 y4 w' I3、用vr灯模拟天光是勾上sotre with irradiance
! L" i7 K/ z$ j( ?9 Y; q q8 Y imap速度会快点# e% R" K) `8 Q4 }4 q
4、算好光子图以后再加对场景影响不大的灯
( R5 p* K! ^. l v5、关了辅助灯计算光子图,要正式渲染时再打开,若想效果更好点可以打个低亮度的vr灯模拟光子反弹效果 [/url] 这个图跑光子36分钟,渲染24分钟,机器配制Atholn 2200+/1024Ram,图大小600x366。
1 V. D: T% f* |! y c1 n场景没有打一个灯,由天光和color map 提的亮度。* D. e7 W0 _" s, O' s5 }. k
参数:AA(Fixed=3);IM(rate=-3/0,Ct=0.2,Nt=0.2,DT=0.3,Hs=50,Is=20) 提高VR渲染速度的关键(二) 在上一篇文章中结合论坛里的暴牙龙、coolmoon、henry0421他们的帖子分析了一下提高vr速度的一些经验和参数,这次我们对照Aparkey
: ~' Q1 u1 X1 m* {的学习笔记来研究一下。其中他提及的大部分参数都经本人亲自验证过,并总结出了一些经验参数可以供自己以后出图参考。* L3 `/ l! u k
上次对于抗锯齿对vr速度影响讲得比较多,那么这次我就GI对速度影响来分析一下。主要是针对光照贴图和灯光缓存。
/ S* I! C; S- ?" l一、Irradiance map(发光贴图)
/ X9 C7 a- t% k- v' X* l大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比
# s8 Y$ e5 x6 A* d5 S渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。+ P3 h" j9 T& q3 C- w. V
max=-1,min=-10/9.9;-9/9.75s;-8/
9 p0 h9 M( O Y; f9.73s;-7/10s;-6/10.3s;-5/10.0s,-4/9.8s;-3/9.85s;-2/10.45s;-1/12.55s* _" }4 ^/ g, @! K( h! c6 t/ ]* J
max=0,min=-10/17.3s;-9/17.3s;-8/ " ?4 Z* C: C# B, _# J E4 d: K
17.5s;-7/17.8s;-6/18.1s;-5/17.7s,-4/17.3;-3/17.4s;-2/18.3s;-1/22.5s./ P! _1 O' b |
虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。
6 }3 n& Q. {) b" u* amin值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4
4 Y+ M. ?1 A4 v/ y* l* B7 e7 r+ x(细节不多时可以用-3),而最终出图可以用0(-1)。, i9 \: Z- w- |2 A, w
HSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80
3 H) V2 l' e1 S: AInterp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。
+ y! h. u$ |8 H- [: VClr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。4 D! r s; \' r: U
Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢
( L( R7 `& ~$ \+ FDist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大9 K; {* q G* c# R
Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。
/ J( s7 K; T4 t+ f二、Light cahe(灯光缓存)
( W/ @' l7 ~, ~/ f1 G2 q灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。
+ Z9 h0 N: \* U2 j* k. oSubdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。
8 ?$ l- ~4 o# j4 L+ L3 PSample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。$ F9 { h1 z" I/ `( _! z7 K
Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15& `( i' B4 u( z
Filter下的Interp
8 Y, r/ j7 @+ ^* e7 Isamples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5 [url=http://img.snren.com/upload/up4/200742511284468276.jpg] 就打了一个天光,没优化参数,蜗牛机器渲染的,放上来提个醒 , v" k: ?; ^: N3 m4 I9 U# c
6 l' a" y, H+ j7 l8 ^, g/ F
|
学习学习songhua