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

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

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

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

x
本帖最后由 375724685 于 2010-4-23 22:30 编辑 $ z4 j* q1 e$ c* @( \5 ^* y
) o, h2 ~8 H+ g! l+ D. u- M2 ^
在上一篇文章中结合论坛里的暴牙龙、coolmoon、henry0421他们的帖子分析了一下提高vr速度的一些经验和参数,这次我们对照Aparkey  
% \9 O3 d% F% l- x的学习笔记来研究一下。其中他提及的大部分参数都经本人亲自验证过,并总结出了一些经验参数可以供自己以后出图参考。  ' u% y+ S2 ^( G" C" ?( r
上次对于抗锯齿对vr速度影响讲得比较多,那么这次我就GI对速度影响来分析一下。主要是针对光照贴图和灯光缓存。  : J8 u% G; `' g' B
一、Irradiance map(发光贴图)  # d- E6 A: e9 ^" r
大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比  
' H9 g5 q& v- N/ _8 L+ B. k渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。  
; [1 n# |1 X. Qmax=-1,min=-10/9.9;-9/9.75s;-8/  
1 k/ M- |! C8 c9.73s;-7/10s;-6/10.3s;-5/10.0s,-4/9.8s;-3/9.85s;-2/10.45s;-1/12.55s  
- ~' P1 a( v+ ?/ m7 Qmax=0,min=-10/17.3s;-9/17.3s;-8/  * t# V& U5 N- r7 d
17.5s;-7/17.8s;-6/18.1s;-5/17.7s,-4/17.3;-3/17.4s;-2/18.3s;-1/22.5s.  4 E. _% A6 \; c/ ~+ ^: K- {
虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。  " r& p- f5 G* B5 U' H, Z4 i! \# \
min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4  
! B! ^4 y7 L2 r1 G, a1 z(细节不多时可以用-3),而最终出图可以用0(-1)。  ( l* i9 F3 \8 x) Y8 A7 t' B& O" d
HSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80  
# ^: U; R( S% ^; p/ B& o* LInterp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。  0 n, x% B! `& X8 W) r' I
Clr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。  $ F2 q' n" J. a# F5 w
Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢  5 R/ ~. ~" K1 ^
Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大  
- }% D/ o4 s; OOptions里的选项一般都不勾选,勾上的话都会减慢渲染速度的。  
" C2 r: F7 i: s2 H# x二、Light cahe(灯光缓存)  + J' ?9 o1 q$ U; O+ k5 b
灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。  2 h* G! S5 t0 u' Q
Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。  
& x& X( Q2 _% v1 i( g7 ]# n% ^" Q8 jSample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。  
0 M2 P; I& p/ P3 e- JPre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15  - z( _1 q  R% ?% ]! G% q% i/ v+ v
Filter下的Interp  
. T' w4 ]* m; o, `: Ysamples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5  6 I4 w. x0 Y3 G  Z9 `9 m  X8 T: q
此主题相关图片如下:  
. w  i# q+ D/ z, ~# r9 f4 ]% O& M4 Y! H0 S- ^# u

' j2 Z. E" q+ @4 Q( R$ n, J: [7 R就打了一个天光,没优化参数,蜗牛机器渲染的,放上来提个醒  
6 E* {$ M6 z& u+ l0 ]; I1 u% I. Z. ^% a# S
4 d% H% m, E/ F$ M
9 `: N" @3 w! h% }

/ t* ?7 i1 ^' K6 L# ^; S3 }+ @% t% V( S+ d
提高VR渲染速度的最好方法(经典转载)VR的基本渲染方法掌握起来并不难,但是最迫切需要解决的问题是VR的出图速度问题。动则需要数小时的渲染时间真的是很难以接受,我们从三个影响速度的参数结合网上一些高手的教程来分析一下。 ! U/ U) R" m4 {6 v

$ k2 \/ r/ @. P一、Irradiance map(发光贴图)
' e0 C0 b$ F1 N+ D6 |二、Light cahe(灯光缓存)
4 `2 N+ `6 B$ s7 J5 H2 B, \, j三、图形抗锯齿方面Image sampler (Antialiasing) # [% R) r4 B5 l( ]* C

$ Y7 n; k% f7 u% M一、Irradiance map(发光贴图)
+ g6 C6 U! X$ \4 C
# P1 t" @! T" }! ^. u9 m" ?# r大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比
. Z" g2 u' U1 a) ^2 y' ]
# [. K/ @9 V& }4 E: z/ c+ \- k, ]渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。
! j! t! z% w4 R* \2 r# Z' B$ F0 k- u/ I0 A! f  _3 c4 `  i9 W
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 4 J" A: {9 Q% V) H

6 o! M! J5 D8 Y+ d4 \* xmax=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.
4 h1 D4 ~& D9 _  w) z
5 N/ H: C4 X8 Z3 i2 @1 m虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。 + v4 s5 }$ l& r) u9 j8 T+ c

" C# G; h7 P0 m1 Gmin值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4 (细节不多时可以用-3),而最终出图可以用0(-1)。
, D2 h- m* m. b/ P. r
- [% l% k& L# V' ?" G) s) M- O  QHSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80 * T0 o0 l# ?# N1 s

4 G, w4 ?4 d2 K8 z1 s" U5 y! M. C& ]4 CInterp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。 ' ^! @; b6 j: y6 N1 i. [' _

/ z) B) J5 z: i2 N% {0 D6 o# TClr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。 6 Y6 g( S1 S% r+ u" E5 H

5 L3 r+ s5 S: H6 N/ I8 D, pNrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢 " n; F3 O) g: T( X( b7 T

/ C! i( F* j- }' w9 q2 UDist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大 / T: z! \) b9 G5 o6 ?

+ t$ v. @- ^; C" k7 O! JOptions里的选项一般都不勾选,勾上的话都会减慢渲染速度的。 4 q2 t: W- G5 R; N9 P3 P
5 D2 @0 G# |# k7 |7 A0 L, L

; z. W7 ]5 n3 v4 R- Z- {' l二、Light cahe(灯光缓存)
5 q" w; e$ J: n6 D; g3 f6 x" D" W! [2 `! H! Y
灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。 * V! n$ E/ c" f3 _  o* w4 ^
) q. T# d  V1 k2 P) r
Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。
: [, K" d  v& B1 \; L
7 ~# ?/ M3 |: A2 c3 b3 r, e" [4 [( ^Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。 4 A: q1 l/ P9 U4 C9 r7 U3 I
0 F8 a$ J) b' W; |8 ~% T
Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15 # y& @9 X5 {6 g& l- x' \
+ ^4 K/ T0 }6 t" x8 G) G
Filter下的Interp samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5 , H/ K9 X0 n5 ~
' U& @# E; ?7 M8 z4 p- k
5 K* `% {' O1 H6 k
图形抗锯齿方面Image sampler (Antialiasing) + \& s3 I# O; H
% f; v4 i# ]. N- D9 F: o
1、无反射模糊,图像质量相似的情况下,adaptive subdivision最快
" R5 X" ^& F; V* T4 o6 ?, W' t+ {
& j9 E( B( V( O$ h4 N& t比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate-1/2
5 Q+ z+ A  O+ Q4 g
9 g) t: q* Q+ m6 ?2、大量粗糙表面多bump贴图,simple two-level 最快
+ ~0 M7 ]3 H9 @) u
% q  }1 h" _9 c6 `* L" s& D比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate0/2,threshold=0.05 $ A6 ~. {1 h: v5 O+ Z8 S/ @0 Y

1 d. t+ ?( M- |+ D' ?4 ]0 j+ R0 r4 n1 h3、如果场景中有大量模糊效果,包括运动模糊,模糊反射,高光模糊,景深等,Fixed是最快的
  G& I# W% }# T3 t0 X/ J6 \/ A& h如果场景中有大量凹凸效果,包括bump贴图,置换,noise等,adaptive  QMC或者adaptive two-level是最快的。其他情况用adaptive subdivison会比较快。 " g  i! c$ g; P% b  W$ P
6 D9 Y# F3 I9 L4 o+ {7 M
根据不同的情况选择不同的抗锯齿这个很重要!!
4 b; t6 o: o1 G
& \& h0 x6 s  E# k1 }0 i& x+ ^
/ x2 b- i: T8 b5 Z# W5 r% Z
: ~' u6 o$ |, N1 l" Q0 g# h另外几个关键的参数: + K' o6 D, e& N# I7 w5 L- e8 w  Y

/ d/ a3 F; A# y& u) ], F: Nthreshold这个值对速度的影响非常大。 ( \# P+ l5 f8 w2 F
# W. l( u6 M3 u
在adaptive subdivison Clr thresh默认为0.1,测试改为1,速度提升很多质量也可以接受 * o4 L" d: C7 Z& N+ p+ `
4 {3 Y4 S/ H1 b/ s, T  W5 {2 V" f
在adaptive QMC ,在rQMC面板的Noise threshold默认为0.005测试改为0.1,速度很快质量还可以。
) e# H- T1 ?3 p" |9 ^% \( U. {, b3 i/ i/ L
如果在adaptive rQMC image sampler 里勾选Use QMC sampler thresh的话,那么这里的域值采样直接由rQMC面板的Noise threshold决定。 8 Q3 G1 {# N& _' G7 z/ V/ l- l/ n
# z) ~# ^* M$ w# g
如果没有勾选则有Clr thresh来决定,默认0.01测试改为0.1,速度快质量也可以接受
. N0 K, f5 l6 P& t: O! z8 ?( F. z. _- Y8 @
Object outline:
& d" B. e' [% Q* c7 W9 ~# w7 p- z1 z' ~; G* ?
当场景有大量细小物体,抗锯齿方式是adaptive subdivison时,如果勾选Object outline,那么渲染会非常慢。这个时候我们不要勾选object outline而用Clr threshold来控制图象质量 3 I: n( s5 K1 c3 I& f! N
7 v8 _3 a0 M9 {7 ~% L
Nrm thresh:这个是特定的法线区域采样,如果对阴影要求不高的情况把Clr threshold设置一个较大的值5,勾上object outline和Nrm threshold这样速度也有不小的提升。 ) E  W# g4 v; E& i% _

, A4 |4 D* j  S! |8 |- \- n与渲染速度有关的还有发光贴图里的二个参数: 1 Z  o# ^  E2 y- s5 B% L

0 R( e; {" o, w' kInterpolation type插值类型和Sample lookup采样查寻
& C3 n* w; w/ {
8 @2 u! y/ z9 O, l0 T0 J* g8 ?  k一般只要将Interpolation type设为Least squares fit(最小平方适配法), 3 w6 r' t2 Q- `3 n0 O9 v/ j

( z& Q6 O0 t7 ~% G+ U/ m" Z' t而Sample lookup设置为Precalculated overlapping(预先计算的重叠),就可以满足我们的大多数要,且速度也很快。
# o  G/ t6 a- `9 T" {5 N0 l) S( q1 B& \+ W+ N, o* \
如果质量达不到要求就再试一试其它参数设置(记住Nearest只适合用于草图预览)  ' Z3 P& p$ [, U$ C) Q9 Y9 P
* d( {7 _$ o3 }% Q, U, S
Check sample visibility检查样本可见性,可以减少漏光现象,但速度会减慢
3 \, H3 F# Q( R' x# ^' B$ ]8 w
9 ~; V. G- U) w! Y- [2 \% m关于coolmoon的帖子: " h2 V, K1 I8 R* @: P3 P

1 |0 z) s, y3 p. O) F提高速度的方法:把所有面积较小的物体选中,把它们的全局GI关闭,只让面积比较大的几个物体来计算全局GI - p& V) @& }; L$ @* Q) }

! }) O$ L0 i$ x7 z9 m3 `他提及的抗锯齿提速前面已经分析过了就不再总结了。 , Y7 y( V# h& G! H
- g4 q& o! h- K  p: w& ]
关于暴牙龙的贴子: ( j, ~7 T% D3 j2 m% m
! y6 Y8 h9 n" y7 \/ a5 o6 Y$ h0 l( S
1。不要用太多的灯光反弹  - W  K5 j* w# C. i( y7 S# h' @3 U
2。不要用太高的发光贴图设置渲染大分辨率的图  
0 `2 J) R9 _$ g7 |% o8 j& B3 ~3。经常保存发光贴图  0 ^4 k7 b! K/ H) R  E6 e; z' k
4。弄个大点的内存 ( Y. j( x2 P+ f8 L% g
5。抗拒齿不要太高 4 ^% @5 K- P1 m' M6 I: {
6。不要用太高的反射折射级别  1 m, {- W& _5 l. J0 z
7。用透明贴图的采样不要太高  0 B. I5 e$ M' C1 H, k
8。把不重要的物体的GI采样强制降低  
$ y" t5 v* n( r9。不要用凹凸贴图和模糊一起用  + J4 l: O  y. X, h  C& O. y6 ]3 y5 [
10。不要渲染太高分辨率的图,够用就行
& k* H0 v: S& ~4 k' p+ }11。能用PS的就PS,比你用3天MAX渲染快多了 - f# i2 o4 A  x+ ]: n" ^
7 k8 m9 Y1 d5 G; @" d- Z2 d
; A- j. K3 E% z; ^, `) c
这是他的原话!! 9 q9 O+ W" }+ d
: Z1 `6 x! h/ ^
下面是经验参数: , }7 z- N1 t- P3 x
& t1 v  o% n4 W
1、木地板模糊反射0.85 和3,反射次数调为1 0 g" n' R/ ]% b: N( \/ e  _  [
2 y7 A* L# q, r) h% n% X8 R
2、最终光子图的 IM参数rate-3/0,Clr threshold=0.2,Nrm threshold=0.2,HS=50,IS=20 ( G) ]8 Y0 j2 y5 h5 G/ u8 g

( |2 s2 p) {$ m2 N: T) K5 X$ F3、用vr灯模拟天光是勾上sotre with irradiance map速度会快点
) Y/ C! I+ W# Z5 l- A' x# u0 F, e& A9 C. q
4、算好光子图以后再加对场景影响不大的灯 3 U' V$ [2 n0 _7 {# W, y* D: ]
* a3 N! H+ x  J
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
    ' E) H3 U% \3 r2 r6 B2 J9 e: X0 A( K  Z9 g/ i
    6 V- _" L  }+ k9 N1 y0 a
       学习

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

    回复 1# 375724685 % h/ Q' z6 S9 p$ x% p

    8 D" e5 w; N, S2 u$ U* g# O9 i) [7 G2 R$ X0 v  g: G& g
        好

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

    挺  了  挺不错的  、
      ]  N* [$ u0 G1 o! s; Y$ z、感觉学习的 东西太多了啊

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

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

提高VR渲染速度的关键 (高手必看)求+精
拓者推荐
  • 【广州站】设计师创业课
  • 【广州站】收纳设计思维训练营
  • 【广州站】户型优化总监内训课
  • 【广州站】 风水丨设计与签单课
  • 【广州站】获客实操训练营
  • 2025拓者年费+案例Vip会员说明!
  • 【 拓者年费--CAD图纸】
  • 【 拓者年费--户型方案】
  • 【 拓者年费--豪宅视频】
  • 【 拓者年费--灵感图库】