Computer Graphics

쉐이딩(Shading) 셰이딩

익플루 2014. 1. 10. 19:57
반응형

쉐이딩

(shading)

 

쉐이딩은 3D 그래픽 프로그램의 렌더링 기능의 하나로 3차원 오브젝트의 표면을 처리할 때 조명의 위치와 물체의 기울기, 색깔, 밝기에 반응하여 오브젝트에 음영을 주는 것이다.

 

물체에 입체감을 주기 위한 수단으로 단순히 면을 계산하고 텍스쳐를 입히는 것만으로는 입체감 있는 물체가 만들어지지 않는다. 생성된 면의 표면에 적절한 처리를 해야 하는데 그러한 기법을 '쉐이딩' 이라 한다. 셰이딩(shading) 또는 그림자 처리는 3차원 컴퓨터 그래픽스 분야에서 렌더링 과정에서 빛의 거리와 각도에 따라 물체 표면의 조도를 변화시키는 기법을 뜻한다. 각각의 폴리곤이 표면과 빛의 각도에 따라서 밝기가 달라지므로 더욱 사실적으로 물체를 표현할 수 있고, 눈으로 식별하기도 쉬워지는 효과가 있다.

 

3차원 물체는 다각형의 모임으로 구성됩니다. 정육면체를 구성하기 위해서는 6개의 사각형이 필요하며 각각의 면에 색을 입히고, 여기에 빛에 의한 명암 등 실제 물체에 대한 특성을 적용하여 질감이나 입체감을 부여하게 됩니다. 이렇게 면에 색을 칠하여 입체감을 높이는 기법을 쉐이딩이라고 하며 광원이 면에 비치는 밝기를 조절하는 Flat shading과 한면에서도 광원과의 거리,각도 등을 적용하여 좀 더 세밀하고 부드럽게 표현하는 기법인 Gouraud shading가 있습니다.

 

 

스무스 쉐이딩

(smooth shading)

 

스무스 셰이딩(Smooth shading)은 다각형 표면의 색깔을 부드럽게 바꾸어가며 다각형을 보여주는 것을 말한다. 이 때 다각형 내부의 색깔은 다각형을 구성하는 정점(vertex)들의 색깔 데이터를 내분(interpolation)하여 계산하기 때문에 각 정점들의 색깔을 각각 정의하고 있어야 한다.

 

플랫 쉐이딩

(flat shading)

 

플랫 셰이딩(flat shading)3차원 컴퓨터 그래픽스에 쓰이는 광원 기술이다. 다각형의 표면 정규와 광원 방향 간 각도, 개별 색상, 광원의 세기에 따라 한 물체의 각 다각형에 그림자를 넣는다.

 

퐁 쉐이딩

(Fhong Shading)

 

3차원 그래픽에서 각각의 화소 컬러와 조명에 기초하여 음영이 있는 표면 계산. 면 단위가 아닌 화소 단위로 오브젝트를 렌더링하므로 텍스처의 질감, 반사, 투명도, 범프(bump, 융기) 등의 효과를 정교하게 반영할 수 있다.

고러드 쉐이딩

(Gouraud Dhading)

 

컴퓨터 그래픽에서 생상과 다각형 면의 구석에서의 조명에 기초하여 그림자가 되는 면을 구해내는 기법으로, 오브젝트의 표면과 각 표면 사이의 교차부분의 색상이 급격하게 변하는 것을 막기 위해 두 평면색을 보간법으로 해석해서 표면의 중심에서 각 표면의 교차선까지 연속적으로 색을 부드럽게 변화시키는 방법.

 

애니소트로픽 쉐이딩

(Anisotropic Shading)

 

타원형, 방향성 하이라이트를 갖는 표면을 만든다. 머리카락이나 유리, 금속 등의 하이라이트를 표현하는 데 적합하며, 가장 밝은 부분 외에는 블린 또는 퐁 쉐이딩과 속성이 비슷하다.

 

블린 쉐이딩

(Blinn Shading)

 

제임스 블린에 의해 개발되었다. 퐁 쉐이딩과 거의 같은 방식으로 처리하지만 하이라이트가 맺히는 부분에서 광원을 보다 정확하게 반사해 주기 때문에 금속 질감의 표현에 적합하며, 퐁 쉐이딩과 가장 눈에 띄는 차이점은 오브젝트 둘레에 나타나는 하이라이트이다. 블린 쉐이딩을 사용하면 작은 각도로 표면에 입사하는 조명의 어긋난 반짝임에 의해 만들어지는 하이라이트를 얻을 수 있다.

 

메탈 쉐이딩

(Metal Shading)

 

금속질감을 위한 응용쉐이딩으로 독특한 Specular 하이라이트 곡선을 보이는 메탈 쉐이딩은 실감나게 보이는 금속성 표면과 다양한 유기체 형태의 재질을 제공하며, 표면의 반짝이는 하이라이트 표현에 효과적이다. 금속 재질의 Specular 색상은 따로 설정할 수 없으며, 그 색상은 재질의 Diffuse 색상과 조명 색상에 따라 Specular 색상을 계산한다.

 

스킨 쉐이딩

(Skin Shading)

 

많이 쓰이는 응용쉐이딩 중 하나로 사람의 피부에 가까운 효과를 내기 위한 쉐이딩이다. 특히 인간의 피부는 색감과 질감은 물론 반사와 투과에 있어서 독특하고 복잡한 구조를 가지고 있다. 반투명한 효과를 위해 SSS(Sub-Surface Scattering) 기술을 이용하는데, SSS는 피부나 종이 등 반투명 물체들의 표면에 빛이 닿아서 투과하지 못하고 산란되면서 이뤄지는 현상을 만한다.

 

툰 쉐이딩

(Toon Shading)

 

3D 만화적으로 표현하기 위해 만들어졌으며, 음영을 단순화하여 표현하고, 실루엣의 아웃라인을 생성하며, 테두리를 갖는 평평한 음영을 제공한다. 만화적 표현이 가능해지면서 만화 애니메이션 작업의 많은 부분에 활용되고 있다.

반응형

'Computer Graphics' 카테고리의 다른 글

OpenCL이란  (0) 2014.01.22
CUDA란 CUDA 병렬 프로그래밍 CUDA 병렬 처리  (0) 2014.01.16
컴퓨터 그래픽스 GPU GPGPU  (0) 2014.01.15
OpenGL 광원 조명 질감 설정  (0) 2014.01.14
쉐이더(Shader) 셰이더  (0) 2014.01.10