Wednesday, September 15, 2010

SIGGRAPH 2010 Course: Physically Based Shading Models in Film and Game Production

http://renderwonk.com/publications/s2010-shading-course/

Physically grounded shading models have been known for many years, but they have only recently started to replace the "ad-hoc" models in common use for both film and game production. Compared to "ad-hoc" models, which require laborious tweaking to produce high-quality images, physically-based, energy-conserving shading models easily create materials that hold up under a variety of lighting environments. These advantages apply to both photorealistic and stylized scenes, and to game development as well as production of CG animation and computer VFX. Surprisingly, physically based models are not more difficult to implement or evaluate than the traditional "ad-hoc" ones.

특히, ILM & Sony Pictures Imageworks course notes는 현재 production rendering과 관련해 우리가 어디에 위치해 있는지와, 앞으로 어떤 길로 갈지를 가늠하는데 있어 꼭 읽어 봐야하는 필수 노트라 할 수 있겠다. 

Ideal texture filtering,

Ideally, computing a textured value for a pixel involved perspective projecting a filter from screen space (indexed by x and y coordinates) to obtain a warped prefilter. Since the texture data are discete samples, we also require a reconstruction filter to interpolate between texel samples. For mathematically tractable warped and reconstruction filters, we can combine the two to create a unified filter in texture space. Each texel inside the unified filter's footprint is weighted according to the unified filter's corresponding value in screen space, the weighted samples are accumulated, and the sum is divided by the filter's volume in texture space.


rendering 과정의 거의 모든 부분이 point sampling process이기에 aliasing은 늘 동반되는 문제이다. 그중 texture pre-filtering 부분은 rasterizing과정인 rendering sampling process와 달리 세개의 공간을 오가며 sampling이 이루어 지는데, 즉 screen space, uv parameter space on the surface 그리고 st texture space이 되겠고 서로 다른 두개의 sampling processes인 the screen space samples and the shading samples in parameter space on the surface을 통해 얻는 모든 결과물이 texture space function에서 이루어 져야 한다는 문제점을 가지게 되겠다.