Weighted Blended Order Independent Transparency

35
WEIGHTED BLENDED ORDER-INDEPENDENT TRANSPARENCY Morgan MacGuire Louis Bavoil NVIDIA Journal of Computer Graphics Techniques Vol. 2, No. 2, 2013

Transcript of Weighted Blended Order Independent Transparency

Weighted blended order independent transparency

Weighted Blended Order-Independent TransparencyMorgan MacGuireLouis BavoilNVIDIA

Journal of Computer Graphics Techniques Vol. 2, No. 2, 2013

blendingOver operatorblendingOITNew methodFuture work

1

Abstract, .Order-Independent Transparency (OIT).OVEROIT. 2

2

,

1. : (unsorted OVER), : OIT 3

3

OIT DEMODEMO4

Porter & Duff OVER Compositing,

OVER operator [Porter and Duff 1984]

glBlendEquation(GL_FUNC_ADD)

glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA)5

OVER COMPOSITING,

6

OVER COMPOSITING, 7

OVER COMPOSITING, 8

OVER COMPOSITING,

Order Independent Part

Order dependent Part9

Porter & Duff OVER Compositing, OVERCompositiongA-buffer:

(unbounded) 10

Key-ideasOrder-independent transparency , .Stochastic Transparency, CSAA, etcZ.Bounded A-Buffer, Stencil Routed K-buffer, Stencil Routed A-Buffer, etc. Fourier Opacity Mapping, etcCompositing operator. Order-Independent Transparency.

GPU..

11

blended OIT (meshkins)Order-independent transparency 2007, MeshkinCompositing operator.12

blended OIT (meshkins)Order-independent transparency

.. .

13

13

blended OIT (meshkins) EXAMPLEOrder-independent transparency

Sorted, =0.25Approx, =0.2514

blended OIT (meshkins) EXAMPLEOrder-independent transparency Sorted, =0.5Approx, =0.5

15

blended OIT (meshkins) implementationOrder-independent transparency

. MeshkinOpenGL

16

Blended oit ADVANTAGESOrder-independent transparency 17DX11-class GPUs (PS4, XboxOne, NVIDIA 2010~ , AMD 2009~, Intel 2012~)DX9-class GPUs (Xbox360, PS3, WiiU, NVIDIA 2003~, AMD 2002~, Intel 2005~)OpenGL ES 3.0 GPUs (with half float) (PowerVR G6430, Tegra K1, iphone 5s)WebGL1(with float texture) , WebGL2 8-bit

blended OIT (BAVOIL AND MYERS)Order-independent transparency 2008, BavoilMeshkin. 18

blended OIT (BAVOIL AND MYERS)Order-independent transparency Cwa, Composition Operator.4

Ci19

blended OIT (BAVOIL AND MYERS)Order-independent transparency

Ci

20

blended OIT (BAVOIL AND MYERS)Order-independent transparency 2008, BavoilMeshkin. Composition Operator.MultiRenderingTarget16-bit float blending.21

blended OIT (BAVOIL AND MYERS) DEMOOrder-independent transparency DEMO22

blended OIT (BAVOIL AND MYERS) implementationOrder-independent transparency

3. Bavoil, MyersOpenGL

23

2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

Aavg24

Depth weight function2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

.25

25

Depth weight function2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency (0.1 < |z| < 500, 16-bit float buffer)

26

26

Depth weight function2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

4.

.27

implementeation2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

accumTexture.rgbaccumTexture.aRevealage

Coverage

revealageTexture.r28

implementeation2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

29

29

Implementeation (for restricted platform)2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

30

RenderTargetblendingC, Alphablending.

RESULTs2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

5. 31

RESULTs2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

32

RESULTs2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

5. CAD33

RESULTs2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

34

RESULTs2013 new weighted blended OIT (BAVOIL and MacGuire) Order-independent transparency

35

35