提高VR渲染速度的关键 (高手必看)求+精

2010-4-23/ 图像资料下载/ 设计软件/ 只看大图 阅读模式
仅供分享不做任何商业用途,版权归原作者所有,谢谢配合。

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 375724685 于 2010-4-23 22:30 编辑
  g8 a4 @) f% x: L6 ^$ U5 X% k
) q$ t2 f  N" q$ d3 b" i5 ^在上一篇文章中结合论坛里的暴牙龙、coolmoon、henry0421他们的帖子分析了一下提高vr速度的一些经验和参数,这次我们对照Aparkey  
: [) w+ M6 v* |的学习笔记来研究一下。其中他提及的大部分参数都经本人亲自验证过,并总结出了一些经验参数可以供自己以后出图参考。  
, z' S6 F. p3 H上次对于抗锯齿对vr速度影响讲得比较多,那么这次我就GI对速度影响来分析一下。主要是针对光照贴图和灯光缓存。  
' u% T0 M3 H% W* `- X一、Irradiance map(发光贴图)  
( \0 i/ K7 W7 n1 R" @  O大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比  " j0 R) U9 R5 V3 }
渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。  
- m5 G$ J( H2 e3 f  X" _% d1 rmax=-1,min=-10/9.9;-9/9.75s;-8/  
, M: i0 z- V3 Y7 C$ B+ U" h0 \9.73s;-7/10s;-6/10.3s;-5/10.0s,-4/9.8s;-3/9.85s;-2/10.45s;-1/12.55s  6 ?& s& j& l5 _  _" x3 J. }
max=0,min=-10/17.3s;-9/17.3s;-8/  
: o: B6 a; _$ k& n* o- s  N17.5s;-7/17.8s;-6/18.1s;-5/17.7s,-4/17.3;-3/17.4s;-2/18.3s;-1/22.5s.  , }( b' y2 e3 \3 i; G4 Q
虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。  
) |2 G9 ^9 P8 r# e7 E; c$ R8 ]min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4  
  c! `" ~3 a6 k( S3 A  \(细节不多时可以用-3),而最终出图可以用0(-1)。  
6 t8 u9 o* V! l* j7 z2 a7 C" W2 dHSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80  3 v! `- h! ?7 L
Interp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。  2 e: W7 Q6 `% {; f
Clr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。  ' F- U8 F  e& e" Y7 o
Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢  8 P& e7 P) z8 m
Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大  4 u2 q! l1 \9 {' T$ n3 ?
Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。  / Q' l8 T% f" P1 }  Y0 v
二、Light cahe(灯光缓存)  4 D) W& {5 L: v5 w
灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。  
4 N  [1 ~9 n" m" uSubdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。  
* l5 j% J% |2 Z5 C+ u! G8 V4 MSample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。  6 Q7 u; `3 r3 V3 W
Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15  
" [5 Q4 ?5 h$ {6 I9 l4 bFilter下的Interp  
$ \: S5 a' |) _; A0 b+ Q) dsamples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5  2 r! D* p7 Y% x0 L, m
此主题相关图片如下:  
- L4 B/ v) p& Y6 @2 N, Z# |4 T+ z8 c  S. u( F2 v- P

9 m- Z( @* k) h! X# u2 V6 N: m就打了一个天光,没优化参数,蜗牛机器渲染的,放上来提个醒  - {* G$ P2 @+ q" ~# Z

; Z" z7 O* a5 N
; l3 B: Z& [7 k' D  L- w( |
5 G6 d, e8 }; E) Q
( E: y8 y6 u  x) V+ d& L, z. P, l' v' M: t0 |/ U$ g
提高VR渲染速度的最好方法(经典转载)VR的基本渲染方法掌握起来并不难,但是最迫切需要解决的问题是VR的出图速度问题。动则需要数小时的渲染时间真的是很难以接受,我们从三个影响速度的参数结合网上一些高手的教程来分析一下。 + I3 @) ^: Z  k; Z8 j% T2 j$ {
- T) o% i: B7 t8 G: `& R
一、Irradiance map(发光贴图)
# ~0 M" [" }# |  ^. p/ w1 H3 B, `二、Light cahe(灯光缓存) # i6 N' D0 O5 S. I  I, e
三、图形抗锯齿方面Image sampler (Antialiasing)
# |$ N" l, ~2 P0 K( r, U' N* s2 K( b) h, A) m8 l" R' a
一、Irradiance map(发光贴图) ! r' \8 R1 n# l6 w

: f2 t; _0 k5 E8 r* I大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比 4 |# o) e) d6 v; V
  B' w& u0 c1 v) x' Z" C  I) ^
渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。 # Y( F' S  X7 L- ]! N5 X7 `

' Q  z/ |/ e: ~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
' x- C& [6 W6 e8 n; _) Y9 L/ }  J. U0 q
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.
2 ^# m4 o% Z0 b( \  ~, g* _3 h* \( {+ k
虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。 ) o; a: \, X6 N8 \$ j0 j
% j! Z) z7 F( }+ M
min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4 (细节不多时可以用-3),而最终出图可以用0(-1)。
% i% R: N  j8 i0 M
3 i( [4 e/ ^; J) M/ {: GHSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80 4 Q3 i7 t5 k2 k$ c0 `$ n

0 v3 ~' ?5 p- M4 x" D* EInterp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。 / ~4 R8 d$ u% Y% i8 b1 i0 X- F

8 v4 V7 j4 ~5 q" EClr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。 : z+ _9 S% w% w; P
. D: G  H6 H1 |/ {# E$ A' `
Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢
9 q) Y0 S$ R0 R, @( Q1 B
5 ~- ?7 M( ~, m2 ]/ |5 HDist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大
1 I# e( `% b# y
0 C: w4 u8 R+ _) M: JOptions里的选项一般都不勾选,勾上的话都会减慢渲染速度的。
% ^, X5 y2 [1 ^7 [3 U, L; h  ]: Z3 g- x( B

" P- [+ H- c" T4 [% l二、Light cahe(灯光缓存) 1 S7 \9 r6 z* _, F6 W% u8 [5 ]; m

. T0 a" N6 a' l7 X9 l( n/ ]灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。
9 }- H+ J; T! O. `9 {+ `+ I4 i$ G# C
Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。
  e! E+ G3 O6 f8 c0 S
+ P  W2 p4 q! _- g8 r* G- ^; |Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。
2 a; Q; ~7 |+ ^+ U9 y, h9 \
8 g2 E7 f' P0 {2 a8 q/ h/ FPre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15 & }2 y6 y0 L$ H2 J
- C0 X. u$ `6 d' F" d4 k
Filter下的Interp samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5
. v/ {2 _1 N( p( e6 t
7 u; c# Q/ a4 r' h1 R7 ~$ h/ C) l
2 {! o8 M; r0 V, m9 q2 _图形抗锯齿方面Image sampler (Antialiasing)
1 q0 K1 ^: f; p; h# G, s2 Y# o* Z5 t5 u, o$ E; r# @$ P
1、无反射模糊,图像质量相似的情况下,adaptive subdivision最快 / `" n4 N" k2 l$ m& r1 w" C+ c- Y
* e7 R6 T3 Z! D, {9 J9 |* {
比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate-1/2   ^- K$ ?: U+ l& i  i, y. }

6 n+ ~: p+ C( [' v8 l% n' v2、大量粗糙表面多bump贴图,simple two-level 最快
# G. E4 \! Z; H9 W! A7 ^* f1 T. k) T) V3 B" j: q
比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate0/2,threshold=0.05 3 d/ D$ c: `* G

8 X" p9 A2 I! E9 o  x7 x3、如果场景中有大量模糊效果,包括运动模糊,模糊反射,高光模糊,景深等,Fixed是最快的
! a7 w( Q4 c+ v; Y" R# \# m如果场景中有大量凹凸效果,包括bump贴图,置换,noise等,adaptive  QMC或者adaptive two-level是最快的。其他情况用adaptive subdivison会比较快。 ) X6 W& d7 Z& r2 T/ e* A0 W
- R5 t, Q/ O& X, d
根据不同的情况选择不同的抗锯齿这个很重要!! & l: O! F! O: N# [1 y. f

% x  \% e. P2 E; ^/ p+ `  M, t
' n# r! e# \8 V2 k0 @: I& N
; h% u$ d3 M+ x/ A: x5 ]3 E1 F! S另外几个关键的参数: 0 I% w# g. m* x$ v8 _5 q9 @

5 K4 |' Z/ R. _6 b0 c8 ?threshold这个值对速度的影响非常大。 1 x1 u' s+ x0 F

# l- i3 H4 U  k' U1 t在adaptive subdivison Clr thresh默认为0.1,测试改为1,速度提升很多质量也可以接受   M6 ^* x$ S: [
9 c4 r) b- d- P& d; {& ~
在adaptive QMC ,在rQMC面板的Noise threshold默认为0.005测试改为0.1,速度很快质量还可以。
  z$ y& |, i3 B$ C8 q. Q. G2 W0 ~* I
如果在adaptive rQMC image sampler 里勾选Use QMC sampler thresh的话,那么这里的域值采样直接由rQMC面板的Noise threshold决定。 $ S8 w- D5 F( \2 R5 w

# t0 |) ?" \: `' ?* z( f5 A/ \如果没有勾选则有Clr thresh来决定,默认0.01测试改为0.1,速度快质量也可以接受
7 n: s% m, |! O: }$ h: ~
( e. I  u0 f0 y* h+ oObject outline: 0 G1 d& g5 W: Y2 d

) D, a! [7 Q& r6 J当场景有大量细小物体,抗锯齿方式是adaptive subdivison时,如果勾选Object outline,那么渲染会非常慢。这个时候我们不要勾选object outline而用Clr threshold来控制图象质量 + i* q$ P& s7 ]: q

1 q- Q4 c1 N. `' c8 d  V' }Nrm thresh:这个是特定的法线区域采样,如果对阴影要求不高的情况把Clr threshold设置一个较大的值5,勾上object outline和Nrm threshold这样速度也有不小的提升。 ! Z8 W- z- R& U1 X! @
4 U$ Q  P2 D) j$ J  l- E
与渲染速度有关的还有发光贴图里的二个参数: 7 x4 I+ O& g4 L

# A  O( F- W9 X& i$ V1 v; ~Interpolation type插值类型和Sample lookup采样查寻
# L- B% G- {2 l5 X0 Z) e: u
$ E7 h. ]  a$ A$ w( ^% }一般只要将Interpolation type设为Least squares fit(最小平方适配法),
. U3 G5 O+ r0 `- A. r
" L: ]5 t' w- E) u# M而Sample lookup设置为Precalculated overlapping(预先计算的重叠),就可以满足我们的大多数要,且速度也很快。 ) x; Y0 n8 B6 L4 C
, K8 x- |' }9 [' i& Q5 {
如果质量达不到要求就再试一试其它参数设置(记住Nearest只适合用于草图预览)  
! ?* J* }- b/ @  l: ^7 K0 J
; f; J; Z: v3 {! S# T) CCheck sample visibility检查样本可见性,可以减少漏光现象,但速度会减慢 ! S3 `; ~* m5 n$ P% M

% k; N3 `' d" ~% Q5 N* |/ C: w关于coolmoon的帖子: * W; z& ~* r1 k9 ~
0 M  I0 |* ]4 j( ]" @0 D% Q+ T
提高速度的方法:把所有面积较小的物体选中,把它们的全局GI关闭,只让面积比较大的几个物体来计算全局GI $ k/ |6 }- p: p- h, V4 Q

, Q& M) [. h, v他提及的抗锯齿提速前面已经分析过了就不再总结了。
+ v) p* }3 c1 w
; m" d. z9 p" T  B关于暴牙龙的贴子: $ [$ a; x( d7 L. A
4 ]) |% t; X) x
1。不要用太多的灯光反弹  
, F; d- Z, T" [4 f( Z+ T2。不要用太高的发光贴图设置渲染大分辨率的图  ; c5 L- a8 z/ k+ ]4 n2 {. m) |
3。经常保存发光贴图  0 \7 G' O7 U2 Z, d: Y* l- e# V
4。弄个大点的内存 : t! k7 f0 \1 u) M+ N1 c
5。抗拒齿不要太高
( w6 `: m: u( H5 l6。不要用太高的反射折射级别  
1 h) ~# I$ U: T* o! |# c7。用透明贴图的采样不要太高  ; A( D# |1 Y0 }# T& @& S3 d
8。把不重要的物体的GI采样强制降低  
) E0 M  D) {3 a) r+ T1 T9。不要用凹凸贴图和模糊一起用  
  N7 t( F2 M4 y10。不要渲染太高分辨率的图,够用就行   Q1 q5 C. r9 g# x* O) k1 f  Y
11。能用PS的就PS,比你用3天MAX渲染快多了 & l( l9 _% g, X# [, I
$ m. o3 G0 Z! Y5 e8 K

! L6 S% y& V" e这是他的原话!!
; T; p* _9 b  q5 A" [# C! O
  g9 h9 P! I2 o+ a下面是经验参数:
. X( Y) a0 f6 l/ r6 s  P3 T. U
% l6 l- D) m3 W4 R0 S1 |1、木地板模糊反射0.85 和3,反射次数调为1
  ~$ b0 P4 ^/ n2 Z" D' @3 S( x8 Y+ y7 A: o7 ^( r2 H5 e' Z
2、最终光子图的 IM参数rate-3/0,Clr threshold=0.2,Nrm threshold=0.2,HS=50,IS=20 / b( ?! D. z% L

- Y: L: u7 t9 }/ `0 z' l. D! O3、用vr灯模拟天光是勾上sotre with irradiance map速度会快点 , j) }$ x. y5 b! l
- E5 ^3 R3 j- ]; n( @* p
4、算好光子图以后再加对场景影响不大的灯
" r  y  w$ x" n. r0 b' Q, z5 k
2 I3 |9 p+ D( m- a8 s1 G( h5、关了辅助灯计算光子图,要正式渲染时再打开,若想效果更好点可以打个低亮度的vr灯模拟光子反弹效果
精华推荐
换一换

发表评论26

  • 375724685 2010-4-23 22:31:05

    .gif" smilieid="74" border="0" alt="" />.gif" smilieid="74" border="0" alt="" />

  • niexiaoxia 2010-4-24 20:33:43

    回复 1# 375724685
    3 c# A3 u+ I8 x
    5 {$ X$ B/ L, S' R- g
    9 P" S/ V6 \! U6 K: I4 Y8 Z   学习

  • 潇宇 2010-5-22 12:17:02

    回复 1# 375724685 8 L7 c  C! l- ^' I2 y6 g( ?

    - `  N. q) c! Z8 B: ]1 X5 M6 [7 P# F
        好

  • 老A~~ 2010-8-17 11:53:54

    挺  了  挺不错的  、, f0 ~* n- J, L3 y: C, O
    、感觉学习的 东西太多了啊

  • 波文 2012-3-30 12:16:28

    诺是中文 该有多好啊。 我还得对照你的去看。

提高VR渲染速度的关键 (高手必看)求+精
拓者推荐
  • WSD世尊新作-南京顶级别墅
  • 苏州绿城越溪合院330样板间方案
  • 召禾邵程设计-上海徐汇绿城潮鸣东方
  • 杭州法式500户型合院别墅方案
  • 比佛利山庄1亿美元的豪宅!
  • 2025拓者年费+案例Vip会员说明!
  • 【 拓者年费--CAD图纸】
  • 【 拓者年费--户型方案】
  • 【 拓者年费--豪宅视频】
  • 【 拓者年费--灵感图库】