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

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

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

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

x
本帖最后由 375724685 于 2010-4-23 22:30 编辑
! Z, k: v9 q) M* y8 S) u/ X" V* {; ]1 Q9 q
在上一篇文章中结合论坛里的暴牙龙、coolmoon、henry0421他们的帖子分析了一下提高vr速度的一些经验和参数,这次我们对照Aparkey  ; o; O! V6 ?' {0 _7 z' g7 |7 v3 S
的学习笔记来研究一下。其中他提及的大部分参数都经本人亲自验证过,并总结出了一些经验参数可以供自己以后出图参考。  0 @" x7 g3 q+ j0 l) ~# _- x% z
上次对于抗锯齿对vr速度影响讲得比较多,那么这次我就GI对速度影响来分析一下。主要是针对光照贴图和灯光缓存。  
& s+ V: }' l- |% q一、Irradiance map(发光贴图)  
! y; Z. \/ p6 A4 x2 P/ c( }( p6 ]大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比  
/ v2 X7 S5 L% r& ~渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。  4 Q* {# g3 G0 D
max=-1,min=-10/9.9;-9/9.75s;-8/  % L9 {$ o. ^  r& y7 i
9.73s;-7/10s;-6/10.3s;-5/10.0s,-4/9.8s;-3/9.85s;-2/10.45s;-1/12.55s  
( n) [7 e% g: T: z! ymax=0,min=-10/17.3s;-9/17.3s;-8/  
5 j; R5 J; [( ]) \- s17.5s;-7/17.8s;-6/18.1s;-5/17.7s,-4/17.3;-3/17.4s;-2/18.3s;-1/22.5s.  
4 _+ \. z  C/ X) ~: ~5 |虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。  ! ]0 m$ T" y8 t2 }) |- L# e* t
min值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4  8 }+ f. h, q* M3 y% m% M5 e
(细节不多时可以用-3),而最终出图可以用0(-1)。  % V8 Z4 r% J2 k6 r$ s8 A& r
HSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80  
; h, d8 e5 `' |+ a' d) J3 D/ RInterp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。  
% Z: Q4 P+ ?2 ]5 JClr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。  
4 q5 `' v- l7 A" L" }: `' L, mNrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢  & @* t. h" P% W" n4 t0 C& L' O3 m0 ?1 z
Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大  
& v: h, L2 M0 V+ f; p* c4 r: H* |Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。  
$ T" C* h3 D% m二、Light cahe(灯光缓存)  ( ]0 j6 A/ F( `- b9 i' ~& S
灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。  
6 t) o6 ~. y" Q, K' ]Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。  
: G. }8 L  Q, W) b  z$ `Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。  
8 X& T3 Y5 v  T: @( [" C. LPre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15  
0 W, I* M7 d, {; E! g) qFilter下的Interp  
7 q9 k( l- O* k+ ~7 f+ Nsamples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5  
0 b  m. W+ }8 H) c6 u' H4 @此主题相关图片如下:  1 W$ s* q# w) Z! |$ w0 e/ i2 v

9 Z" x' _% n" F: d8 X9 [+ n' u; C( P2 J$ W
就打了一个天光,没优化参数,蜗牛机器渲染的,放上来提个醒  
5 F- P, z5 H0 a% @! G, i5 J! b  b8 m. Z! D3 G! W: s
7 c+ d, {) Q: ^# u: J

$ C3 h+ B# Z% ]
( W# ]% t& _" D7 U/ h: R7 Y" \' h8 Q& ]5 o1 }6 B; |6 C& n
提高VR渲染速度的最好方法(经典转载)VR的基本渲染方法掌握起来并不难,但是最迫切需要解决的问题是VR的出图速度问题。动则需要数小时的渲染时间真的是很难以接受,我们从三个影响速度的参数结合网上一些高手的教程来分析一下。
  C+ }$ X! V' e  U" W' M1 d# n' g' D1 }3 }
一、Irradiance map(发光贴图)
0 f2 b/ ]" u( Q$ j/ E8 I% Q4 k二、Light cahe(灯光缓存) - M" X% h  ~* c5 {" X' O; Z6 s
三、图形抗锯齿方面Image sampler (Antialiasing) 7 }, [8 |8 ^& L. q( ^+ q5 ^7 r  `6 I

) Q7 d5 J$ v) ?/ J, R* ~. Y( H9 Z一、Irradiance map(发光贴图)
- l0 h1 k- G( C* [9 T+ z( G5 `7 J. m( z* H1 S, v; ^7 x
大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比
4 @- ?7 M1 X1 {* T- G7 Q3 [6 ?3 L4 c& O: O( Q
渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。 * C/ d& ?/ n  X9 D$ L, M( q* ?

! H5 K' [' [3 U  R# c# g# ~6 xmax=-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
, ^0 h! U. l" }3 E+ v! q5 S0 @* e) C7 v7 R
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.
8 V' j6 m" J! N  K0 T/ l5 d; P! T( y8 b# J+ I
虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。
+ V  ]$ X% c5 O! G9 J
, j9 O* b* u% g" u* p, Gmin值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4 (细节不多时可以用-3),而最终出图可以用0(-1)。
) S0 }# @7 d, [; |
5 T# P+ {+ l! `; }6 O) {! nHSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80 % c1 u5 a$ i8 \: e
4 i- r- g( |: |8 \+ I$ [
Interp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。
4 ?8 M9 u/ f( y9 X( a
* D9 f) ?2 A1 A; u9 h: [/ ?9 CClr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。
3 v/ Z- V& i( I6 W
2 h  u+ ~# C' ENrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢 + b' y! L, n- |% O9 F$ n, b3 v
. k6 u$ }* k+ l: R8 E2 \
Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大 $ H3 l* Z) m$ W) c

6 Y, ~3 ]0 |* d7 ~1 T7 AOptions里的选项一般都不勾选,勾上的话都会减慢渲染速度的。 0 D$ n% u  V. v: d( G

+ w7 x8 B: V& m% f- F. k. l6 C( f4 b5 n  r  q8 m
二、Light cahe(灯光缓存) , o  z" [6 T3 q3 `* z' F; Z" C3 r

% N/ U1 x9 d9 O0 g9 G* T灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。 - m" N. u" Y% y

7 Q" V8 b3 E  L4 L1 V' FSubdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。
: h3 k" i. [; n  t- ^% F4 u9 T. ]+ B7 N: \% S9 u
Sample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。
4 E2 a) U8 h0 p) t: ^( y+ s0 d8 w- s) Q  F
Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15   P& [& ^& o0 G* c2 R# U. i
) L% f" }1 G/ G: i$ L
Filter下的Interp samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5 : B6 f' U5 r. \; h% e
( k: f4 J/ f, q

6 ~8 S* ]5 g. m' y; ?图形抗锯齿方面Image sampler (Antialiasing) : l7 ]8 _8 a- Z5 y2 M/ J" b, M
- X6 K7 F! m/ N6 r* t) q; F. a
1、无反射模糊,图像质量相似的情况下,adaptive subdivision最快
, b" W4 h; _" t& i) H
( R$ g8 l6 Q* G. {: @- T比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate-1/2
( |; T: {9 [7 l  T' C% @$ J2 f; K! }$ u/ Q, o
2、大量粗糙表面多bump贴图,simple two-level 最快
3 S( f& h8 s' d3 J# g' ?% |+ }1 a( A2 [# q% U
比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate0/2,threshold=0.05
" p& ?( W3 y+ V% i" R5 J% O5 A6 c/ W
3、如果场景中有大量模糊效果,包括运动模糊,模糊反射,高光模糊,景深等,Fixed是最快的 $ ?" M9 I/ w( s. ]+ e
如果场景中有大量凹凸效果,包括bump贴图,置换,noise等,adaptive  QMC或者adaptive two-level是最快的。其他情况用adaptive subdivison会比较快。
# b8 \1 v2 V# U. t7 K( x
1 Z, Y! Y( \, h& A2 j! j  f根据不同的情况选择不同的抗锯齿这个很重要!!
5 u3 d; H( w& h( k0 n1 v
* m3 L' N# u8 G8 A: }
* v; s5 \* U3 O/ Z  H& w3 `) B  B5 c# I, ]6 d; ?: z
另外几个关键的参数:
( \4 x- I' c" N
9 I. v2 U5 U6 |  G$ dthreshold这个值对速度的影响非常大。
* |3 |) x% i3 {3 s. p# c" O
0 X- f- ^9 v* Y# o# v5 T7 H在adaptive subdivison Clr thresh默认为0.1,测试改为1,速度提升很多质量也可以接受 4 F; T. }9 m& k" {8 _" _) |

0 {. Z$ Y' F4 [+ P& E. ^在adaptive QMC ,在rQMC面板的Noise threshold默认为0.005测试改为0.1,速度很快质量还可以。
5 Y5 u7 J- R* E' }, q; f
) g' r. R, N5 w: H# B如果在adaptive rQMC image sampler 里勾选Use QMC sampler thresh的话,那么这里的域值采样直接由rQMC面板的Noise threshold决定。 - e# K0 }7 Q: d4 p, G- a. m

8 X6 {( T6 m. e- D2 z如果没有勾选则有Clr thresh来决定,默认0.01测试改为0.1,速度快质量也可以接受 ( j/ b% T/ m. v5 A; X- }7 G! N

, t" s) Z# _8 L4 f! QObject outline:
  q  Y0 P! ?$ S7 B: |0 Q
5 `7 u) r. h9 J- b8 K: H当场景有大量细小物体,抗锯齿方式是adaptive subdivison时,如果勾选Object outline,那么渲染会非常慢。这个时候我们不要勾选object outline而用Clr threshold来控制图象质量 ; X1 d' U$ b! E1 ?3 @+ Z  t
0 h5 D, Y( w9 P# ?: ?7 |
Nrm thresh:这个是特定的法线区域采样,如果对阴影要求不高的情况把Clr threshold设置一个较大的值5,勾上object outline和Nrm threshold这样速度也有不小的提升。 7 z1 @+ k+ U8 {; Y

4 x* Y/ T2 r3 j与渲染速度有关的还有发光贴图里的二个参数:
8 O6 J# N- k" v" Q/ A& ]6 X: T6 b" s9 g5 ~& i, R
Interpolation type插值类型和Sample lookup采样查寻
5 \0 Z, L+ F. B* M/ t7 e. D2 j4 K9 l& B& T
一般只要将Interpolation type设为Least squares fit(最小平方适配法),
# J  G! V9 M  a, M! d
( W: ?3 V* R# v$ H' [& Y而Sample lookup设置为Precalculated overlapping(预先计算的重叠),就可以满足我们的大多数要,且速度也很快。
2 t' M4 |4 }' t: N  F, K# ]" N, ^; B
如果质量达不到要求就再试一试其它参数设置(记住Nearest只适合用于草图预览)  
- T3 w9 N# g) b1 g+ e, h9 t' y, w3 \. O/ Z" `- ], V
Check sample visibility检查样本可见性,可以减少漏光现象,但速度会减慢
  m, s/ @9 r; Y  Y2 p7 c; t" l  b. B( [
关于coolmoon的帖子: 5 t4 ~8 L- ?" {0 g, u" S

# ~& a. k/ l$ j8 H提高速度的方法:把所有面积较小的物体选中,把它们的全局GI关闭,只让面积比较大的几个物体来计算全局GI
! h  z# j. K+ ^2 ]1 J; a! N- v; w) ?- q0 z* P& k0 T. j
他提及的抗锯齿提速前面已经分析过了就不再总结了。
5 z6 y" a$ A) S6 x, H! E: o4 y6 l3 Z
. ~6 x% O* G5 y/ n. S关于暴牙龙的贴子:
, J" d; _& b, k' x
- A) g4 Q' B7 F$ r1 h1 n1。不要用太多的灯光反弹  
! J6 I: c. F/ `4 F& T2 a! Y% [2。不要用太高的发光贴图设置渲染大分辨率的图  / g" |1 G' A; b8 e  G4 ?6 w
3。经常保存发光贴图  
: h; d6 V* R* s( m* ?% `4。弄个大点的内存
$ u( M; k! q) z# l) S. H4 t, l5。抗拒齿不要太高 3 A; N. D) w/ [1 S% C
6。不要用太高的反射折射级别  
7 e1 s% }, a" d8 U$ s7 [3 k7。用透明贴图的采样不要太高  
1 `) c1 e/ @& s8。把不重要的物体的GI采样强制降低  + |7 P% E6 @: k! u# m( U+ O
9。不要用凹凸贴图和模糊一起用  
; O% {7 |3 q4 T/ b9 W10。不要渲染太高分辨率的图,够用就行 # Y/ I: q) R  p. ^6 \7 E4 ?+ }; }
11。能用PS的就PS,比你用3天MAX渲染快多了
( x7 K( v( a& o5 n: u4 {3 {- Z2 ~! {9 D$ i

, `# V5 ?  X6 @+ c4 A% a4 j! D这是他的原话!!
. ~9 t9 o% j; L0 ]
* c8 d* i- H- ~2 m2 J7 F下面是经验参数:
) o: F% w5 E$ A1 ]  Q
3 C8 R7 q1 x2 \4 N. u1、木地板模糊反射0.85 和3,反射次数调为1 ( r: z0 ]1 X5 Z+ P- R. ?* T2 s

2 v8 F2 S% v' v5 R2、最终光子图的 IM参数rate-3/0,Clr threshold=0.2,Nrm threshold=0.2,HS=50,IS=20
. t+ f2 q" O: W; R
  a. `% \/ j9 L# c9 X8 z/ e) ?$ O3、用vr灯模拟天光是勾上sotre with irradiance map速度会快点
. m" D# V+ t- ?$ z4 r0 R
) \9 w8 w! ^' _* p4、算好光子图以后再加对场景影响不大的灯
# c, [. ~3 G' [4 A1 S
9 e! e, B, \& w* V' s5、关了辅助灯计算光子图,要正式渲染时再打开,若想效果更好点可以打个低亮度的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 - K7 }2 S. g. N1 S- t
    . j" \2 Z2 z- I, ^9 X
    9 m8 ]" ]' u# ]: {4 X
       学习

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

    回复 1# 375724685
    4 e4 l7 ~0 q* c" _" F: o6 d/ ^
    7 ]2 |+ U2 ^7 K
    7 [3 C+ F# h& `! M9 R6 o$ a    好

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

    挺  了  挺不错的  、
    ; ?$ O, j" M1 L4 B) l、感觉学习的 东西太多了啊

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

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

提高VR渲染速度的关键 (高手必看)求+精
拓者推荐
  • 2026最新精选CAD平面户型库
  • 赛拉维CLV | 上海远洋:沪上林墅
  • 度设计机构 | 杨涛:和光煦境
  • 赛拉维CLV | 艾迪逊梦享家
  • 许章余设计|让音乐成为家的主角!
  • 李益中 嘉兴安漫 · 湖墅
  • MDO-广州金茂·越秀璞樾·墅
  • 【广州设计周】同城获客实操
  • 【广州站&设计周】户型优化课
  • 【广州设计周】风水丨设计与签单
  • 2025拓者年费+案例Vip会员说明!
  • 【 拓者年费--CAD图纸】
  • 【 拓者年费--户型方案】
  • 【 拓者年费--豪宅视频】
  • 【 拓者年费--灵感图库】