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

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

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

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

x
本帖最后由 375724685 于 2010-4-23 22:30 编辑
$ V3 ?" h4 B+ r4 }# Z+ f. L4 j" |' C% c9 e2 d3 I6 q" _6 B
在上一篇文章中结合论坛里的暴牙龙、coolmoon、henry0421他们的帖子分析了一下提高vr速度的一些经验和参数,这次我们对照Aparkey  0 c. N0 m( N5 }0 ^6 M7 }& A0 P$ _
的学习笔记来研究一下。其中他提及的大部分参数都经本人亲自验证过,并总结出了一些经验参数可以供自己以后出图参考。  & v( S% O) n) r! j7 `
上次对于抗锯齿对vr速度影响讲得比较多,那么这次我就GI对速度影响来分析一下。主要是针对光照贴图和灯光缓存。  
, }. U* }- n# A$ u6 b一、Irradiance map(发光贴图)  . e0 U  m* A9 e/ {
大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比  7 T! Y6 n8 L" V7 W
渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。  
  U2 ~; n% p3 Q0 _max=-1,min=-10/9.9;-9/9.75s;-8/  
2 R  o; J$ N. F5 {9.73s;-7/10s;-6/10.3s;-5/10.0s,-4/9.8s;-3/9.85s;-2/10.45s;-1/12.55s  
3 H  J0 ^: O& J5 p8 Q$ n( zmax=0,min=-10/17.3s;-9/17.3s;-8/  & l5 a6 e1 ^! a& r. B2 N
17.5s;-7/17.8s;-6/18.1s;-5/17.7s,-4/17.3;-3/17.4s;-2/18.3s;-1/22.5s.  
, K7 J# j9 E/ {- p虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。  
, u$ ?. E3 F) g$ S' S) @# Amin值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4  
9 X( i2 u1 |$ B6 ~# ^8 e& P(细节不多时可以用-3),而最终出图可以用0(-1)。  
9 ?8 }$ x7 @7 ?4 u2 G7 y# t* p' f3 |$ THSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80  
: h) W, H1 }! Y0 I6 U4 dInterp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。  & G7 |& ]7 H( _: H3 l8 y) O
Clr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。  
4 m5 x' t6 ]6 JNrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢  7 S( y4 i3 i4 z( O6 V# H  W+ ~8 ~
Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大  3 g2 t" A6 ^' @* k4 ~2 \- }. y
Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。  ! ^, }; E1 x2 V1 }8 W1 B! R
二、Light cahe(灯光缓存)  
  Y% w- L0 P. ^% h$ \0 |5 Z灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。  ! P$ C  W) X$ {
Subdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。  
) V- p" a9 l' A- H! P! QSample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。  0 r& ^, ]# O& [7 R6 ?* G3 P( E
Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15  
1 R) Q$ A, P5 i! V# E/ oFilter下的Interp  
* U5 ]% x+ V' s8 L" Isamples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5  
* I8 L) \4 G& [' ?此主题相关图片如下:  7 x( q! Q5 i1 I( {  M

: u! q; m! k! c; U
% A3 c% u- O4 C, E就打了一个天光,没优化参数,蜗牛机器渲染的,放上来提个醒  
- i1 Y. e, p0 j* ~( P6 M1 y1 |, ?. ?
) m  t+ e' S& T1 E! \, X! ?9 j$ N  f$ J' ~
$ f$ |8 A! u5 G4 P' s

( \7 @4 X, J: z7 o; c& X& \- v, q
% x* h0 Z! N" r/ r提高VR渲染速度的最好方法(经典转载)VR的基本渲染方法掌握起来并不难,但是最迫切需要解决的问题是VR的出图速度问题。动则需要数小时的渲染时间真的是很难以接受,我们从三个影响速度的参数结合网上一些高手的教程来分析一下。
( f2 C- @) @4 @" f" _$ I3 R# ]$ Q& o/ u# ~* D% l
一、Irradiance map(发光贴图)
1 [+ J' y6 f9 b$ p9 Y二、Light cahe(灯光缓存)
- G8 {0 ~2 [2 J, j三、图形抗锯齿方面Image sampler (Antialiasing)
" }$ E+ _5 x! f( U- l4 x8 N- X) [- }! G% _" _; R4 A
一、Irradiance map(发光贴图)
( F; G) q+ E# t9 g+ }3 E3 b4 o. Z/ [* w: X; `4 ~* `
大家都知道,rate中对速度影响最大的是min值,那么我们就在max固定的情况先来测试一下改变min值所需要花费的时间对比
: m" u- j$ \" W' n% V: E7 R4 Y/ z
: O- m2 ~  r; G  D6 T5 z5 z渲染时间都是4次的平均值,因为是测试所以选了比较小的场景会快一点。 0 a7 I2 e6 n  \4 O# P/ I# x# [
  _; Z# U# u% ^" Z! ~( M
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 1 R' S& I; k/ U+ H0 I

7 a, C% ^, W/ N, c( b4 A* t, `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. * x8 V7 P0 ^1 @
" H$ J. ^) j& y/ q  u
虽然只测试了两组数据,不过我们不难得出结论,在图象品质过得去的情况下min=-4是最快的。所以测试用min=-4,而出图时也可以考虑用min=-3。 , e5 s3 ]6 R) w' U8 v; c

! n  \5 h: B& bmin值是对大面积平坦区域的采样,而max是对拐角细节处的采样,而max的增减和时间是成线性递增的关系,所以我们在这里不再重复测试。在草渲的时候可以用-4 (细节不多时可以用-3),而最终出图可以用0(-1)。 7 |8 g  {1 o) c$ F- J, [
" G/ @' a6 B9 p
HSph subdivs:值越大速度越慢!测试20,出图用50,不要超过80 / D* G- f) G$ X7 X8 r, |% t

* ~! t% @# q* E& c7 D8 bInterp samples:值越大速度越慢!这个值是控制漏光的,越小漏光越少。一般用20。
, |* S' @, w0 e0 j& J8 h: u: u/ i( f; d3 F1 C5 z# ^) P
Clr thresh:系统默认波动范围0.1-0.3。值越小速度越慢,值越大越容易漏光。 0 _0 x! x% z' \; V
2 j! Q+ Y5 A2 ^' Y+ b# A5 g4 F' l
Nrm thresh:控制弧面和多拐角面精度,波动范围0.1-0.3,值越小速度越慢 " ^/ k- F0 C/ I5 |! h7 Q* L6 ?
# p( c2 W, b2 y
Dist thresh:值越小速度越快漏光越明显,默认0.1,粗测0.001-1对速度影响都不大
* W% O( s* N1 h. X, b! r# W3 \5 X2 O4 G& s% a- ~' Y
Options里的选项一般都不勾选,勾上的话都会减慢渲染速度的。
: C! m: |( a1 u7 x' q7 J' S$ h, Y
- p8 ]( n% v) x: G# t9 q- q
二、Light cahe(灯光缓存) ' J! u$ v4 n! n+ v  Z
* R& q. r. M% C# s# W, e. j
灯光缓存一般作为二次反弹,其实vr对二次反弹的吸收并不是太好。所以在基本质量的前提下保证速度是最重要的。
7 d) Q. j; v  }. L8 i
) x( g2 j  D* X: k, k/ R9 wSubdivs:影响速度的主要因素,测试用100,出图300-500(比较暗的时候500-800)。不要超过1000。 ( v; t- s( x" O5 a( |

2 ^1 a" K5 P6 u1 T' }9 |" t7 HSample Size:这个值对速度影响不大,不过值越小容易出现黑斑,越大漏光就更明显。一般默认即可。 + @" L: Q* i! I3 Z
9 \- a8 y" W6 Y- {! x* _
Pre-filter:对速度影响不大。值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般10-15
1 Q# W0 g; @- P8 W: p( L9 l: H
# _) M0 l* p6 tFilter下的Interp samples:对速度影响不大,值越大细节越模糊,值越小细节越清晰,容易产生黑斑。一般5
7 M8 \# v, R5 v9 G" Z/ {2 _0 H3 a5 D9 M$ E
6 P( H/ d7 m$ ?; C- {+ }/ ]% Y; }: x' Y0 E! z$ T$ f2 V0 X, H
图形抗锯齿方面Image sampler (Antialiasing) . g5 I# j' V0 x& G' d6 t: o% J
( l6 t6 a% U( S3 Z/ ~
1、无反射模糊,图像质量相似的情况下,adaptive subdivision最快 ) K5 m* T6 B- N5 z' K: t4 _

, j. a; b( n/ v+ m) h/ X/ \比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate-1/2
2 G7 P! s) M; u7 [# C2 s: W# @! L! @2 t! A! w- ?" g$ o* k% h' N
2、大量粗糙表面多bump贴图,simple two-level 最快 6 T4 l+ B$ H5 v  }+ x2 m
: W2 A3 c# G2 `5 _9 C: T
比较参数Fix rand=4; two-level subdivis 1/4;adaptive subdivision rate0/2,threshold=0.05
* U* f4 f* S  b4 d( U- ^4 d8 |/ C: G7 h1 O4 g
3、如果场景中有大量模糊效果,包括运动模糊,模糊反射,高光模糊,景深等,Fixed是最快的 ; Y5 S# ?6 k  Y
如果场景中有大量凹凸效果,包括bump贴图,置换,noise等,adaptive  QMC或者adaptive two-level是最快的。其他情况用adaptive subdivison会比较快。
  d! Z" V+ d5 v- ]0 I0 t1 l) X( O. P6 G8 x9 o
根据不同的情况选择不同的抗锯齿这个很重要!! 9 @$ [5 O. q4 l/ W; t. A* X
8 r/ H1 _) k( o8 m4 ~3 R2 ~

" g. Z$ Q* R, h* p+ \2 h
. `& O# E( ?0 I5 F7 u3 g另外几个关键的参数:
3 R8 O3 L: e/ D
, u3 U4 v1 z7 W+ i1 H% ^% hthreshold这个值对速度的影响非常大。 0 t) N8 Z# j( b9 w

% r& D+ [; U4 s+ H3 H; t在adaptive subdivison Clr thresh默认为0.1,测试改为1,速度提升很多质量也可以接受
# G: x/ @& B. b% N/ G9 k7 T% V" t1 M- b/ u! u
在adaptive QMC ,在rQMC面板的Noise threshold默认为0.005测试改为0.1,速度很快质量还可以。
) h( a/ v8 M3 B9 K& }- a$ ]2 o# n! N% G- M( B2 e9 i
如果在adaptive rQMC image sampler 里勾选Use QMC sampler thresh的话,那么这里的域值采样直接由rQMC面板的Noise threshold决定。 ! J- E, }4 H4 ~. [" r$ e6 j

( L( u0 d: l% X: P- G7 ^如果没有勾选则有Clr thresh来决定,默认0.01测试改为0.1,速度快质量也可以接受
  A- s- t9 C+ x9 {* T! ?; i0 ~* V* O: c
Object outline:
2 {( p6 f. T- Y/ t# \7 u; G/ ^
1 j6 b7 i8 w* f7 c8 v8 n+ c当场景有大量细小物体,抗锯齿方式是adaptive subdivison时,如果勾选Object outline,那么渲染会非常慢。这个时候我们不要勾选object outline而用Clr threshold来控制图象质量
) _8 K$ n+ \, v* Z3 \# Y& i7 b) s; H  ?' ?9 H
Nrm thresh:这个是特定的法线区域采样,如果对阴影要求不高的情况把Clr threshold设置一个较大的值5,勾上object outline和Nrm threshold这样速度也有不小的提升。
  s$ X0 B3 T! Y: P. W# I5 m' n: K0 N6 ^# {% x! x- t
与渲染速度有关的还有发光贴图里的二个参数: , ?; I0 }* U' f9 {  V8 w

/ \' i2 E$ k2 i7 `Interpolation type插值类型和Sample lookup采样查寻
' Y3 @( C. E* P$ l9 }) {7 e* V' o0 O/ C7 U1 ?) V: W2 F7 R
一般只要将Interpolation type设为Least squares fit(最小平方适配法),
* q# M! r) x4 r" E9 Z0 z2 X( Q6 J' w( W
而Sample lookup设置为Precalculated overlapping(预先计算的重叠),就可以满足我们的大多数要,且速度也很快。 ' y. S, j3 F: h. z" K3 U
! z1 |" @6 \: o- g/ i+ m
如果质量达不到要求就再试一试其它参数设置(记住Nearest只适合用于草图预览)  : B& |5 O9 m: ]( x5 F, @
% G1 }5 H% I  T% n, l! I
Check sample visibility检查样本可见性,可以减少漏光现象,但速度会减慢
0 I1 x( B4 {" A/ ]* D4 L0 c3 N9 A8 S. m$ H" L0 S' c; Y: ~
关于coolmoon的帖子:
' y4 Y7 k1 u$ U
2 m1 M6 H0 V2 l/ S' |8 Z提高速度的方法:把所有面积较小的物体选中,把它们的全局GI关闭,只让面积比较大的几个物体来计算全局GI # d2 G& V. m' R; W

4 j; ~5 E4 T. i8 t! L( j他提及的抗锯齿提速前面已经分析过了就不再总结了。 5 r: ~: e8 c. W
. c- x+ p9 x1 o& H/ y
关于暴牙龙的贴子:
; t) j- W3 X! {$ N+ a% Z* V7 s2 U
: ~, }% n, X* t6 I& d1。不要用太多的灯光反弹  / l0 Q" ~( ?! e; z4 S
2。不要用太高的发光贴图设置渲染大分辨率的图  ) g) p3 w1 B% n+ S7 j
3。经常保存发光贴图  
$ b$ P# ^1 K8 G# }4。弄个大点的内存
, S9 q4 S5 x# [9 ~: d5。抗拒齿不要太高
2 V! W# l9 D2 ?/ ?6。不要用太高的反射折射级别  0 n: H6 ^. Z) Y$ D
7。用透明贴图的采样不要太高  6 |% [8 R! `( j. D7 ~
8。把不重要的物体的GI采样强制降低  
/ W2 [+ D# r) O% O( f+ ]9。不要用凹凸贴图和模糊一起用  
7 t/ l! b; M/ ~# i: o, f5 D- l% g10。不要渲染太高分辨率的图,够用就行 4 {3 P% H# Q7 ^- L* H
11。能用PS的就PS,比你用3天MAX渲染快多了 2 R& U8 a; d* T" A$ A% B
: D/ S! @/ }5 B3 {1 ]" y% C

: p  F2 X* Q' a4 s' T* L这是他的原话!!
$ {2 r1 v, S% g( \% {) c/ E
$ k: b0 r' e! J+ |下面是经验参数:
: O" S2 X" K: h- P
0 s! s, ^3 o; }+ {3 e1、木地板模糊反射0.85 和3,反射次数调为1
4 @! t  r  ]$ |0 T9 n
) o6 g1 g9 G  Y, [" N# U* `* [2、最终光子图的 IM参数rate-3/0,Clr threshold=0.2,Nrm threshold=0.2,HS=50,IS=20 ; U1 K6 d2 V4 N

- e0 \) f; L! ?. e& a+ M5 E3、用vr灯模拟天光是勾上sotre with irradiance map速度会快点 1 ]; N& x5 t3 i+ {$ T! a

: Z: Z7 P% k6 T3 Z/ A4、算好光子图以后再加对场景影响不大的灯
2 z, E; `# D6 W$ _2 B+ A4 x% e# a- D3 `
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 % k4 U" {& |9 Y3 c  J1 |2 q

    ' {. }2 W8 V: q- y: B2 U
    ( \9 k$ O$ x; {: V1 ~5 i   学习

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

    回复 1# 375724685
    8 S/ _4 k9 Y% p) [, r+ _3 t7 `5 |+ k, o7 f8 ~

    2 A, _, _  R% B3 o: \    好

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

    挺  了  挺不错的  、
    $ t. e9 [/ {( ^; |、感觉学习的 东西太多了啊

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

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

提高VR渲染速度的关键 (高手必看)求+精
拓者推荐
  • CCD--新加坡亚太总部
  • 【孟也 新作】成都麓湖·钰潭
  • 无间&葛亚曦-保利北龙湖
  • 星河颂355户型样板房
  • 金陵越城天地别墅
  • 2025拓者年费+案例Vip会员说明!
  • 【 拓者年费--CAD图纸】
  • 【 拓者年费--户型方案】
  • 【 拓者年费--豪宅视频】
  • 【 拓者年费--灵感图库】