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

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

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

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

x
本帖最后由 375724685 于 2010-4-23 22:30 编辑
, E; G1 i5 Y$ O5 |$ d3 B2 P: K2 p: ]9 H/ p! y  h
在上一篇文章中结合论坛里的暴牙龙、coolmoon、henry0421他们的帖子分析了一下提高vr速度的一些经验和参数,这次我们对照Aparkey  ( I& p) u0 [  k1 e6 a2 B/ h
的学习笔记来研究一下。其中他提及的大部分参数都经本人亲自验证过,并总结出了一些经验参数可以供自己以后出图参考。  ( `5 X) K3 z, @' Z: y+ H- g  n) I
上次对于抗锯齿对vr速度影响讲得比较多,那么这次我就GI对速度影响来分析一下。主要是针对光照贴图和灯光缓存。  9 H6 A6 D. t7 \
一、Irradiance map(发光贴图)  ( |: i2 N  b& `2 _& e* x
大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比    }) B5 D, |1 @6 }  c  d3 y/ C
渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。  ' [! H3 l0 F/ h/ E. V
max=-1,min=-10/9.9;-9/9.75s;-8/  6 Z3 `1 _$ T+ K( F; `% s
9.73s;-7/10s;-6/10.3s;-5/10.0s,-4/9.8s;-3/9.85s;-2/10.45s;-1/12.55s  # D/ x' S. Q# |* y* W/ L
max=0,min=-10/17.3s;-9/17.3s;-8/  
7 d  o5 Q, Q" B8 E17.5s;-7/17.8s;-6/18.1s;-5/17.7s,-4/17.3;-3/17.4s;-2/18.3s;-1/22.5s.  ) d8 A9 u" e) H7 F
虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。  / C4 G% t& _- [8 i- w
min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4  
' o& ?* h! L+ j0 \(细节不多时可以用-3),而最终出图可以用0(-1)。  
6 H' k" j% _: v* ?$ \2 AHSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80  
! T0 s8 j, F3 ~4 ~Interp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。  $ j! _; G  q0 h- W. {. G5 n
Clr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。  
' R0 ?7 F6 ]1 @3 G/ ?0 zNrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢  
( S3 |' c8 a6 L% t& w* l6 {Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大  
/ E, Y  P# ~' i' Q" \- ~  `: aOptions里的选项一般都不勾选,勾上的话都会减慢渲染速度的。  5 e, f5 A6 o! Q' }9 [: A
二、Light cahe(灯光缓存)  
. E* ?- Z. c# I$ A9 l灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。  ! |7 E1 n' N1 O# \
Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。  5 m. p6 m: v7 l! E
Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。  + c4 N4 S: }3 [. t% M& R) J
Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15  
# K- t& |/ u9 h$ [Filter下的Interp  : H% I) d  |$ L
samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5  
+ M% D& P3 c& ~5 `. P( l# a此主题相关图片如下:  
% T, _, U5 t6 |+ m4 z* ?5 A7 I8 U$ Z7 r1 S. c2 v8 x: _) J
9 s8 K  T9 I( k! ~6 k
就打了一个天光,没优化参数,蜗牛机器渲染的,放上来提个醒  / Z5 R# q  l+ s6 E9 g+ q

, ^' x' A( R- [+ ^5 l0 g! ?8 E8 d& B1 }  |' A& y3 a
9 ?2 H# V- a* j  `) e" C- ~

9 ]) L- E; P0 P. X. N& t7 G$ _" R2 i0 B% [9 f
提高VR渲染速度的最好方法(经典转载)VR的基本渲染方法掌握起来并不难,但是最迫切需要解决的问题是VR的出图速度问题。动则需要数小时的渲染时间真的是很难以接受,我们从三个影响速度的参数结合网上一些高手的教程来分析一下。 + q# L" T7 \$ G
7 y6 G) r% t1 }8 b
一、Irradiance map(发光贴图) 0 O6 ~' D( T' [  Z
二、Light cahe(灯光缓存)
" R6 i1 [  J5 c5 o三、图形抗锯齿方面Image sampler (Antialiasing)
# L. v2 E9 @- y  h
. e, _7 w3 G1 Y$ o一、Irradiance map(发光贴图) 6 f$ ?% R+ X# P. L3 V* ~

4 ?" U8 h3 B6 k1 }) n8 P0 V- j+ E' M) h大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比 7 q1 P' l1 i! Q
- H- }$ `6 ?9 \) ^4 \; d; A7 R
渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。   s# Q! s* {0 F* Y
# }: R8 N$ R6 R4 C9 t
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 - a* [& J; _! L; m9 w6 }
% a" \2 W- m5 K4 H5 ^, S
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.
, E/ K2 j  u! J  r( l" ~, C9 F. o' p: y7 F/ u
虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。
5 V" {# Z+ r, T2 L9 ~- n! Q3 Y3 G! [) @8 r9 h
min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4 (细节不多时可以用-3),而最终出图可以用0(-1)。 : L7 C& G5 p" u. L$ S/ s0 F. ~( |6 W

6 p2 `% g2 ^3 I& B$ H. AHSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80 / Y$ h' C( f4 o, |# q
$ z: ]$ R" H/ _: M' D2 }) z
Interp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。
$ v+ Z% ?& t/ E0 [* k" ~  k( [
" r: a/ _, i! z7 H! wClr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。
( G0 }2 Q* a. v# E  |
  {( r$ H  y% M% ]Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢 & {, k$ `  ], T# C1 K* w

6 A) R4 ?7 F. Z2 S* B; t2 @Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大 - ~/ J3 E. H# _/ P

9 I6 v$ }% I0 T9 h6 vOptions里的选项一般都不勾选,勾上的话都会减慢渲染速度的。
9 p! }% e( b1 o# F0 g9 q3 B  x7 K
2 A9 N1 Z& m$ z) o  I8 N
二、Light cahe(灯光缓存)
1 c$ H$ R0 ~$ r% u7 m! b
$ n0 D" v# n! E& \: K4 ?4 ^灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。
- M. d' N" v0 g* [( e( w0 R# d% p4 W' r
Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。 ' U" C6 L) \: ?( N
$ U" [) M* V* |2 R! W
Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。 ; v6 k! ~- W7 l' c2 h: K) N) ]

/ q; j# L# `" X; Y! y: G1 SPre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15
' q3 @$ N4 t/ Q/ H5 E' P" C5 `5 l6 x( ?* x; i
Filter下的Interp samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5
( v; @! r  R# V& V: x- W: a9 M, U" Q# `0 O+ M9 w

% {0 x7 Y# p* ], F图形抗锯齿方面Image sampler (Antialiasing) % z3 u4 O: k3 o* x

6 a8 l$ h8 X' \% u. \) z. Z& ?1、无反射模糊,图像质量相似的情况下,adaptive subdivision最快
6 H4 i! B9 J  l! E
+ l, d- E5 M: r' ]8 x9 F6 w比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate-1/2 $ I" c$ @1 c1 B0 _( B
+ u. p; p: p8 {) a; u5 Z1 G  Z
2、大量粗糙表面多bump贴图,simple two-level 最快
1 `6 L9 M- J$ V- Y( w& y
0 C* P8 h4 p/ I$ x8 v( L) q/ d! m比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate0/2,threshold=0.05 $ f& W* j# }5 V
2 |+ y( c, [* ^9 V  G. B- N
3、如果场景中有大量模糊效果,包括运动模糊,模糊反射,高光模糊,景深等,Fixed是最快的 6 _! _. @& x) X4 _% L  S
如果场景中有大量凹凸效果,包括bump贴图,置换,noise等,adaptive  QMC或者adaptive two-level是最快的。其他情况用adaptive subdivison会比较快。 1 l1 r/ @3 I/ v0 b

- j' ^- @7 D* n根据不同的情况选择不同的抗锯齿这个很重要!!
$ J* E9 h: u# H- |( @4 c, |6 T, f3 G2 j- _" t: t0 X

; N- n% \8 h! E4 {4 O( W, s& D+ P& ?
另外几个关键的参数: $ g. U  [3 G! @- a9 v2 N0 I' @
0 }2 R8 F. q  W! C
threshold这个值对速度的影响非常大。
2 i" P2 r3 S% G
4 s+ Z/ B3 t+ v- F/ O5 b' X在adaptive subdivison Clr thresh默认为0.1,测试改为1,速度提升很多质量也可以接受
- s! d- w  N; ]- G" |
9 B5 |6 v) o' ]1 t: B' u在adaptive QMC ,在rQMC面板的Noise threshold默认为0.005测试改为0.1,速度很快质量还可以。
3 _7 o0 z% O% Q, D) ]: ^& C9 n+ G8 i1 b& _6 x
如果在adaptive rQMC image sampler 里勾选Use QMC sampler thresh的话,那么这里的域值采样直接由rQMC面板的Noise threshold决定。
% z+ y7 W; q* l& a# l# P: p
% [5 u$ C0 L- d0 o3 w# C' s2 u如果没有勾选则有Clr thresh来决定,默认0.01测试改为0.1,速度快质量也可以接受 ) K) p$ v; c. m

: Q2 P; W% i9 L2 k+ mObject outline: 8 l! {: _: y: V0 V% t6 j; g

) x1 c4 }0 M" S; B6 {4 r当场景有大量细小物体,抗锯齿方式是adaptive subdivison时,如果勾选Object outline,那么渲染会非常慢。这个时候我们不要勾选object outline而用Clr threshold来控制图象质量 7 h' S, V% n! d# s& m3 K1 W: ]
1 U& F7 i& y" k8 ~3 V) \. T! F1 b
Nrm thresh:这个是特定的法线区域采样,如果对阴影要求不高的情况把Clr threshold设置一个较大的值5,勾上object outline和Nrm threshold这样速度也有不小的提升。
5 u: @. F% v% Y( T+ i" T  U
3 Y8 B- Q5 h" J7 T5 \7 I与渲染速度有关的还有发光贴图里的二个参数:
! D6 [5 Y" `" T' {7 E/ b; ~% t7 D; f- j4 a3 C& ]8 V
Interpolation type插值类型和Sample lookup采样查寻
7 T9 Y- t1 b0 a5 O/ K( W) Z! w7 L
一般只要将Interpolation type设为Least squares fit(最小平方适配法), 1 J9 v8 Q& V1 q: F: N. Y( s
% Y9 X4 Z/ k: {' N+ g4 o
而Sample lookup设置为Precalculated overlapping(预先计算的重叠),就可以满足我们的大多数要,且速度也很快。 6 O3 l/ N3 i# L5 o. e% K

  Z: J' \- @6 j; v8 r) }! w2 J如果质量达不到要求就再试一试其它参数设置(记住Nearest只适合用于草图预览)  
% [# ]2 D. w8 ^( `, o3 I$ B6 [2 I) ^7 m0 g  r" c
Check sample visibility检查样本可见性,可以减少漏光现象,但速度会减慢 4 k4 O, ^$ H: |# J( R

: i8 J! o8 E" ^0 M" N) T% I关于coolmoon的帖子: . K3 v, R4 ^' e7 O, q+ d2 O) f
, P" K+ A* h& I9 ~* R% {) c
提高速度的方法:把所有面积较小的物体选中,把它们的全局GI关闭,只让面积比较大的几个物体来计算全局GI - O" B- ~0 N0 E

. n# _/ D; ^: a1 K9 j! w他提及的抗锯齿提速前面已经分析过了就不再总结了。
; F& A% q5 C) E4 a
& ?5 ^  H* h0 L1 S关于暴牙龙的贴子:
# F% q( Q: v1 L& `% n- h# B1 R: ~+ `8 F  y% J, u' I' U
1。不要用太多的灯光反弹  
: Z: {' U7 H1 N$ p2。不要用太高的发光贴图设置渲染大分辨率的图  
; P8 _7 E, e! j1 w2 P3 L3。经常保存发光贴图  , G+ o1 v) x3 B7 Q9 _
4。弄个大点的内存 1 x( F- u- _& x( U
5。抗拒齿不要太高
7 g4 c9 q1 r9 i8 M" M2 P" n6。不要用太高的反射折射级别  
! e4 }+ o1 W# z0 ~7。用透明贴图的采样不要太高  
3 q, p! n; _5 {  I# P) x9 \" V6 w8。把不重要的物体的GI采样强制降低  $ l0 d2 D' Q+ P! g0 d0 P1 ]! R3 E6 X
9。不要用凹凸贴图和模糊一起用  - m# K# L- F0 t6 k
10。不要渲染太高分辨率的图,够用就行
8 S9 o2 Z, U" K+ }% \11。能用PS的就PS,比你用3天MAX渲染快多了
' I2 T. e* R. V& m7 j! z7 P/ K) h* j9 Z# Y8 [9 [5 R9 {

6 d$ ]7 j7 x" `! y3 ?0 Q) ~, w这是他的原话!! / E9 J" o8 Q4 k7 z' v$ X
. A! c* {3 ]$ q4 _
下面是经验参数: 7 h0 ~! M7 r' n8 X  Q3 N) l. [
& c# F* a) p+ S2 F$ I$ F6 `& _4 T+ V
1、木地板模糊反射0.85 和3,反射次数调为1
& o  M0 R7 ]- I0 @. g/ B. a. Z" v! R* g/ i9 k
2、最终光子图的 IM参数rate-3/0,Clr threshold=0.2,Nrm threshold=0.2,HS=50,IS=20 . B! B$ m& E' B( B5 k# B2 k

- j  m8 b0 N* c' g$ s3、用vr灯模拟天光是勾上sotre with irradiance map速度会快点
8 W9 Q( _" ]" W, W1 R
( ~8 Q( U" Z: `+ p7 C2 G5 r3 }4、算好光子图以后再加对场景影响不大的灯
& q4 W# v# V# ?9 x3 x. f0 b7 {) {9 B# R" ~2 q
5、关了辅助灯计算光子图,要正式渲染时再打开,若想效果更好点可以打个低亮度的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 9 M7 P6 h5 ~6 c: t, r

    ! b( D* Y6 P4 C( m) S
    ' \- s' n8 w- A" P" W% }9 K1 X   学习

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

    回复 1# 375724685
    , H2 B1 h6 J5 x5 S# C
    4 u! t& d" I: Z, B9 {  V+ X" J% l' y  r' D; r7 }. h# H5 ]" N
        好

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

    挺  了  挺不错的  、' D! [, ^' ^7 ?3 L) \
    、感觉学习的 东西太多了啊

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

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

提高VR渲染速度的关键 (高手必看)求+精
拓者推荐
  • CCD-华润889㎡公寓样板间
  • CCD--580㎡福州建总雍湾
  • 苏州绿城凤起潮鸣售楼处会所
  • 【杭州站】户型优化总监内训课
  • 【杭州站】同城获客实操
  • CCD-华润 CCBD 889㎡设计方案
  • 【召禾设计]天际江景超大平层方案
  • 【WSD世尊】建发·云启玉诸
  • CCD-华润玺宸上院中叠样板间
  • CCD-武汉绿城外滩玫瑰园别墅
  • 2025拓者年费+案例Vip会员说明!
  • 【 拓者年费--CAD图纸】
  • 【 拓者年费--户型方案】
  • 【 拓者年费--豪宅视频】
  • 【 拓者年费--灵感图库】