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

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

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

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

x
本帖最后由 375724685 于 2010-4-23 22:30 编辑
+ o: E+ Q' T# n- h8 e2 u
- r4 H( H2 D' M* ]在上一篇文章中结合论坛里的暴牙龙、coolmoon、henry0421他们的帖子分析了一下提高vr速度的一些经验和参数,这次我们对照Aparkey  
: T/ X& h6 N  e' k" G  `1 t的学习笔记来研究一下。其中他提及的大部分参数都经本人亲自验证过,并总结出了一些经验参数可以供自己以后出图参考。  
& b4 F- z3 _9 ~上次对于抗锯齿对vr速度影响讲得比较多,那么这次我就GI对速度影响来分析一下。主要是针对光照贴图和灯光缓存。  
5 U6 p8 X/ G% R6 x一、Irradiance map(发光贴图)  
4 Z2 u/ @) A' l; Z/ A/ `  F大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比  
$ ?+ m4 f, k# r2 `渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。  ' P! q" r2 V# B% `7 I7 Q
max=-1,min=-10/9.9;-9/9.75s;-8/  3 r/ B1 R  K) V; O3 y( w
9.73s;-7/10s;-6/10.3s;-5/10.0s,-4/9.8s;-3/9.85s;-2/10.45s;-1/12.55s  
- S0 w- F+ l' ?max=0,min=-10/17.3s;-9/17.3s;-8/  & r5 R0 z2 ?3 @6 ^' j/ q3 V9 T
17.5s;-7/17.8s;-6/18.1s;-5/17.7s,-4/17.3;-3/17.4s;-2/18.3s;-1/22.5s.  
: [. ^1 U5 R7 l! S% ], e- N! [虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。  
3 N! R: E! L1 U9 K! Rmin值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4  8 E/ n- [5 K8 J3 M- u. [; c2 B
(细节不多时可以用-3),而最终出图可以用0(-1)。  + F! r9 o4 `% p% w; F% h
HSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80  : L3 a: ]+ F4 P! v* ?, D8 S( N
Interp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。  
$ v. U  h' i7 r: Q' FClr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。  
, ~! |' v5 s$ ONrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢  % {) V: E, m4 [0 [3 s8 A
Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大  ! f8 U2 I- W. W0 }: N" @+ M7 X5 G
Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。  1 Y$ j' ~0 x5 p# D7 n; u
二、Light cahe(灯光缓存)  
- V# X5 _+ V- @灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。  0 |/ K& X3 t9 A* H1 h6 Q" O
Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。  8 k1 M5 {7 U0 ], Y* g
Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。  ( u; w+ r7 C4 V; g. r% B
Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15  
" N9 {; s# u0 h- pFilter下的Interp  
7 C2 O, `" b' Y# lsamples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5  # m) u9 `+ W& C2 e
此主题相关图片如下:  5 W# @9 w9 |, C& a
0 r! A5 k7 K  a4 ]! o, X; ~

7 v0 u( l8 A3 u2 W' K$ S1 R就打了一个天光,没优化参数,蜗牛机器渲染的,放上来提个醒  1 h$ e5 E  U/ e$ H1 w
. u4 W2 h7 P( t3 w0 A1 x9 _

  s" D* s, ]; f4 C1 ?9 V/ D$ m: ]( }$ P# f

( g0 o/ k  w) v( C% H- u5 M1 }3 l! j' y: j* f% k! w2 _6 C
提高VR渲染速度的最好方法(经典转载)VR的基本渲染方法掌握起来并不难,但是最迫切需要解决的问题是VR的出图速度问题。动则需要数小时的渲染时间真的是很难以接受,我们从三个影响速度的参数结合网上一些高手的教程来分析一下。 % X/ E6 I4 x, y9 X( J

; i8 t6 x& \. p) ]一、Irradiance map(发光贴图)
  x& s+ f1 Y% W3 D+ C% N# ~% Y二、Light cahe(灯光缓存)
6 N+ V# u- }0 h  I- g' t$ j' u! b三、图形抗锯齿方面Image sampler (Antialiasing) 6 U- d* X, O; [  \* D
8 i$ m5 a3 ^, q, o, a
一、Irradiance map(发光贴图) / c- M5 W9 ?+ ]  J1 M! |

  O1 e2 c6 ^+ V* p5 b, k大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比
) _- j! o* X; m& ~$ s3 q" V) u1 ]- _/ R3 \
渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。 8 Z. l1 {2 c1 U0 K9 h" \# ]
. \. }0 A9 n& s; D$ g
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 + I8 _; I1 \/ l5 j6 o6 D0 F  q' F

1 [9 z$ \7 k3 Amax=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.
7 T, i3 Z; B7 X- [
: h9 n* s$ i! d0 {虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。 / L' v( W$ |& S5 L
4 }3 m+ ^* z) j: Q5 M5 `" e, j
min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4 (细节不多时可以用-3),而最终出图可以用0(-1)。
0 j  r* B+ a) g0 d6 Q6 V8 Y1 f
& Q; `/ m) x3 u; S  e0 d. Q! iHSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80 7 m: O) C  M0 a" B
" @) e$ j1 E: ^! N5 o
Interp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。 ! o( N1 g8 z1 `6 M# D

$ N( X) u' r2 K) J) [9 L# vClr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。
& a7 f, c7 o5 T3 n! X8 \* _4 {( f6 f! D, Q) a; o) S) F
Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢 " L. k9 z) S& M% x+ f
  U! F3 F7 i2 Y1 F  e+ E6 a* _
Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大 1 Q5 r2 X3 ?6 @' U
+ K. I, f# ]* e. |- U- d/ z5 G) J
Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。
- j" S0 e- i9 R2 {$ F# @$ k5 I% U; [- ^; b! L2 L+ {/ n

1 l" ]* L) \  q# S/ _二、Light cahe(灯光缓存)
1 [8 g- N4 T% X5 \0 p
7 {; R5 t9 j5 H! b灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。 % A; Z6 ~) K7 t& L; w% S4 ?: F

' N0 q0 C/ E- t3 mSubdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。 , a+ L! K. H6 @& a! t2 t+ K1 m
9 o) ~! \" q1 _; X; |" v
Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。
  {1 Q! B& x" {+ g2 \  ~& o4 W0 S+ i  e3 f/ A0 L- E1 X
Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15
9 B. F9 A" ^/ n8 B/ T" K
0 O* j0 g, {6 t: ^Filter下的Interp samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5
' q# e. h$ h5 x7 M( G: h# C5 @* l% D6 D  L# ?' R

9 M; ^1 w1 ~: m9 q图形抗锯齿方面Image sampler (Antialiasing) ( L- o" N; R. i* S3 l7 b

$ Q2 _2 E7 f! u/ a# ^4 ]+ ?# A1、无反射模糊,图像质量相似的情况下,adaptive subdivision最快 5 z5 [9 R7 E, K# T. l2 B- d7 }

. L% T" G- ^8 Z5 c! Z5 b( }比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate-1/2 1 L) Q  k: c2 P. N: t

  `8 n2 ]7 ?$ v8 t2、大量粗糙表面多bump贴图,simple two-level 最快 9 a& S/ P" {0 a  y) [- ]! L) H
4 l$ y; V  Y, q6 X1 `1 q
比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate0/2,threshold=0.05 # E7 H$ E# I/ ^4 l2 v# W7 w

/ f* }1 h9 ]. F3、如果场景中有大量模糊效果,包括运动模糊,模糊反射,高光模糊,景深等,Fixed是最快的
4 P( I$ h* \& n7 h( V7 y6 b如果场景中有大量凹凸效果,包括bump贴图,置换,noise等,adaptive  QMC或者adaptive two-level是最快的。其他情况用adaptive subdivison会比较快。
5 n  G; @/ l/ B& C# x6 u* X* J/ d% d- R4 v  l
根据不同的情况选择不同的抗锯齿这个很重要!! ) k4 W. p. U' J: z" e  f
! g' W# ]) {- G$ B- h
4 C4 W2 t0 g# c) {; t" A

& o5 g4 e2 g3 R* _  o8 |- \8 E8 v另外几个关键的参数: : y* i. @" Y, j# T6 B3 Q2 r* D" h, z

; ]# @2 z8 b. o3 e% D. a$ nthreshold这个值对速度的影响非常大。
' ?9 w' Q/ k+ J: O: S0 U9 T) T; f
4 C9 U2 r& C5 |* W在adaptive subdivison Clr thresh默认为0.1,测试改为1,速度提升很多质量也可以接受
2 {( I6 ?1 B% V$ T: @
  y9 t$ j3 J, M/ [! L, a; X  R在adaptive QMC ,在rQMC面板的Noise threshold默认为0.005测试改为0.1,速度很快质量还可以。
6 C" d' m7 Q! B# K# n/ z+ K) Z) A& _( A$ x  Q* @
如果在adaptive rQMC image sampler 里勾选Use QMC sampler thresh的话,那么这里的域值采样直接由rQMC面板的Noise threshold决定。 5 P! G8 ~) I! d

. O6 Q2 m0 z) j% w如果没有勾选则有Clr thresh来决定,默认0.01测试改为0.1,速度快质量也可以接受
- _( |5 [/ G, e" X
  v& y% q, B  ~0 V. HObject outline: - ^' H/ Q3 T% R0 h3 U: E9 ~
. Q) ]# c; H/ E. z* t
当场景有大量细小物体,抗锯齿方式是adaptive subdivison时,如果勾选Object outline,那么渲染会非常慢。这个时候我们不要勾选object outline而用Clr threshold来控制图象质量
* J2 S& |1 \! ^, |# ~2 Q& ]* V) T9 l8 H* |1 k
Nrm thresh:这个是特定的法线区域采样,如果对阴影要求不高的情况把Clr threshold设置一个较大的值5,勾上object outline和Nrm threshold这样速度也有不小的提升。 6 p! B0 O" x! b

: X4 I% m; @3 _3 ]3 |& m9 u8 E与渲染速度有关的还有发光贴图里的二个参数: 3 G$ @5 \: b! c. I3 O" Z7 s
1 l) l7 t  _0 X6 `3 l3 a
Interpolation type插值类型和Sample lookup采样查寻
1 z# z9 K$ w0 W+ J
( L1 U/ e/ r7 ~1 O$ d! D% N一般只要将Interpolation type设为Least squares fit(最小平方适配法), ) C; S) i$ s8 |# C+ Z8 J, i
, O( b0 t: p* v# n
而Sample lookup设置为Precalculated overlapping(预先计算的重叠),就可以满足我们的大多数要,且速度也很快。 . V- Y% P# B. W% W) ~7 O
6 ~( F2 j& H- o7 H7 h; ~
如果质量达不到要求就再试一试其它参数设置(记住Nearest只适合用于草图预览)  1 x. s6 @6 C: P) n& F1 G8 Y
6 }5 G) T  n' c
Check sample visibility检查样本可见性,可以减少漏光现象,但速度会减慢 8 v9 `3 n! W6 F. S" R* k; O( r5 x, d+ w
3 S' J8 Q- x, e  a
关于coolmoon的帖子: 9 T% E- ^' |0 }4 A- |

2 w% D4 X0 S* ]; G, n: ~4 U8 E提高速度的方法:把所有面积较小的物体选中,把它们的全局GI关闭,只让面积比较大的几个物体来计算全局GI
# `0 {% Q9 D8 p
/ p( R  Q$ P: E0 ]; i他提及的抗锯齿提速前面已经分析过了就不再总结了。 5 [: N2 @* r' R. f; t/ z$ C

0 K! D* q4 Y. h% ~& Q6 d关于暴牙龙的贴子: " f6 v5 Y$ z8 }) k; R3 H% n: u+ i
4 H5 E" p; r6 m  W+ Z( f
1。不要用太多的灯光反弹  ' X! U" n/ t, g* C9 Q+ F
2。不要用太高的发光贴图设置渲染大分辨率的图  # u7 n2 o7 r) v. \
3。经常保存发光贴图  
  M. D& k, z# ]1 L# Q- @4。弄个大点的内存
* y: h) z; u' s+ r0 Y* `' k' y5。抗拒齿不要太高
; k' Y* j  I# M! }& m/ l% P6。不要用太高的反射折射级别  & W8 T! z/ O7 N' C5 i
7。用透明贴图的采样不要太高  
2 J* E: d0 }, ?. j! ?8。把不重要的物体的GI采样强制降低  . `) G1 Q$ w4 Z# I+ K; I; n, \; F
9。不要用凹凸贴图和模糊一起用  / I( f" {; m( x$ R: O
10。不要渲染太高分辨率的图,够用就行 8 S- n  S& |& w, ], w
11。能用PS的就PS,比你用3天MAX渲染快多了 8 m& F) {! l+ A9 O; z
4 d6 i2 i3 L! q! ^, b# ]3 O

. S8 k/ |/ ^6 H- v9 h; r9 c7 O3 c% a这是他的原话!!
0 @" Y5 t+ C/ Z3 Y3 f' q9 M/ Y
, _5 R2 \6 Z6 _0 P/ F! V; o, a下面是经验参数: 6 {' V% D: `; B5 L
6 g$ ?% ?/ n7 v) U% D. x
1、木地板模糊反射0.85 和3,反射次数调为1 7 x8 A* o# t. Y" Y* \
2 \' p- R1 ^' _/ u. P% b
2、最终光子图的 IM参数rate-3/0,Clr threshold=0.2,Nrm threshold=0.2,HS=50,IS=20
' A& H5 o& D6 L/ a% ~( a9 P/ }, r. z7 q9 F8 O# G* H. A& g7 d8 d6 l
3、用vr灯模拟天光是勾上sotre with irradiance map速度会快点 % n! r& a3 I5 h4 B- ~. f3 c# q/ n/ N
# Q; n+ Q' i" [' H( R
4、算好光子图以后再加对场景影响不大的灯
! e+ t  o7 r( q& v' d- X
3 i# S9 p" m" g/ i% I/ |) }+ i! l5、关了辅助灯计算光子图,要正式渲染时再打开,若想效果更好点可以打个低亮度的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
    ) s/ [( C! m1 B4 s' a" ^# E: ^8 e6 D& B% Z( T, J
    $ S( Q* S; `9 I& _% w- W
       学习

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

    回复 1# 375724685
    + G, F) u5 R' Y
    & ~, H% L' a" M7 G0 w( W; I
    5 t' J( p- \  ]6 _    好

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

    挺  了  挺不错的  、7 v0 R9 s* S9 [# b. m
    、感觉学习的 东西太多了啊

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

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

提高VR渲染速度的关键 (高手必看)求+精
拓者推荐
  • 福州阳光城象屿登云湖
  • 上海绿城弘安里新海派别墅
  • 郑州美景东望五层别墅
  • 李益中-科大硅谷样板间
  • 【豪宅设计】铁建越秀樽樾
  • CCD-蓝城·七星潮鸣800户型
  • 唐忠汉--重庆阳光城·别墅
  • 拓者年费 季度会员,十大福利!
  • 恒信龙泉映山谷·春秋府别墅
  • 一三装饰 | 西溪半岛别墅