**Recent Comments**

**Link**

일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|

1 | ||||||

2 | 3 | 4 | 5 | 6 | 7 | 8 |

9 | 10 | 11 | 12 | 13 | 14 | 15 |

16 | 17 | 18 | 19 | 20 | 21 | 22 |

23 | 24 | 25 | 26 | 27 | 28 | 29 |

**Tags**

- #unity 슬라이드바
- PS4
- richtext
- 유니티 한글 깨짐
- #유니티 텍스트표시
- radio button
- #unity slidebar
- Rich text
- #unity Inspector
- 에셋번들
- AssetBundle
- 유니티 번들
- 유니티 에셋번들
- markup text
- #unity
- UGUI
- 유니티 에셋
- ps4 key mapping
- unity
- GlobalIllumination
- unity hp bar
- UGUI Mask
- Toggle Group
- DS4
- toggle
- gi
- 유니티 빌드 후 한글 깨짐
- 유니티 json 한글 깨짐
- AnimationCurve
- #unity textarea

- Today
- 1

- Total
- 34,408

**관리 메뉴**

## UnderCode

## Real-Time Polygonal-Light Shading with Linearly Transformed Cosines 본문

출처 - https://labs.unity.com/article/real-time-polygonal-light-shading-linearly-transformed-cosines

## Real-Time Polygonal-Light Shading with Linearly Transformed Cosines

Eric Heitz, Jonathan Dupuy, Stephen Hill and David Neubelt

ACM SIGGRAPH 2016

## Motivation

Shading with area lights adds a great deal of realism to CG renders. However, it requires solving spherical equations that make it challenging for real-time rendering. In this project, we develop a new spherical distribution that allows us to shade physically based materials with polygonal lights in real-time.

## Why is polygonal-light shading complicated?

Shading with polygonal lights requires integrating the BRDF over the polygonal domain covered by the light.

Despite polygonal lights being theoretically one of the simplest lighting models, they are challenging in real-time rendering for two main reasons:

- Problem 1: Integrating parametric spherical distributions over spherical polygons is difficult in general, even with the simplest distributions.

- Problem 2: State-of-the-art physically based material models are not simple distributions; they have sophisticated shapes with anisotropic stretching and skewness that need to be represented for the material to appear realistic.

## Linearly Transformed Cosines

To overcome these problems, we introduce Linearly Transformed Cosines (LTCs), a new kind of spherical distribution that covers a wide variety of spherical shapes and can be analytically integrated over arbitrary polygons.

#### Definition

Our idea is to start from a simple clamped cosine distribution and apply a linear transformation to its direction vectors. This allows for controlling the properties of the shape of the distribution, such as roughness, anisotropy, and skewness.

cosine (base shape) |

roughness | anisotropy | skewness |

#### BRDF approximation

Thanks to the variety of spherical shapes they cover, Linearly Transformed Cosines can closely approximate physically based BRDFs. Below is an example of how a GGX BRDF (left) can be approximated with a LTC (right) for varying incident directions.

Of course, the approximation is not perfect, but it efficiently recovers the main features of the BRDF for different roughness and incidence configurations.

#### Polygonal integration

Thanks to their linear invariant properties, integrating a LTC over a polygon is equivalent to integrating the original clamped cosine distribution over the polygon transformed by the inverse linear transformation: it is just the irradiance (form factor) of the transformed polygon for which a closed form expression is available!

LTC-polygon integral | ..equivalent to.. | cosine-polygon integral |

analytic solution! |

#### Other properties

With the same idea, we can use any spherical distribution as a base shape to create a new family of spherical distributions with parametric roughness, elliptic anisotropy and skewness. If the original distribution has an analytic expression, normalization, integration over spherical polygons, and importance sampling, then these properties are inherited by the linearly transformed distributions.

## Downloads

- paper
- supplemental: MATLAB
- supplemental: plots and validation
- supplemental: comparison against Technicolor's technique
- Demo (executable + code)
- WebGL Demo
- BRDF fitting code

#### 'Unity' 카테고리의 다른 글

Real-Time Polygonal-Light Shading with Linearly Transformed Cosines (0) | 2016.08.04 |
---|---|

C# 컴파일 그리고 IL2CPP (0) | 2016.08.04 |

에셋번들 생성하기 & 다운로드 (1) | 2016.06.15 |

Unity - PS4 Controller Mapping (0) | 2016.04.26 |

Mobile GI Test 1 (0) | 2016.03.04 |

AnimationCurve 클래스를 이용하여 간단 애니메이션 만들기 (0) | 2016.03.04 |

**0 Comments**