중요 2011. 6. 9. 03:37

Texture mapping과 Shading, 그리고 Rendering의 정의.

원본 3D 아티산 http://3dartisan.com/contents/cgforum/cgforumView.asp?ForumSeq=35


우리가 일반적으로 삼차원 그래픽을 접하면서 흔히들 혼동하는 부분이 Texture와 Shader, 그리고 Renderer의 의미와 그 차이점이다.


특히 Texture mapping과 Shading의 차이점과 Shading과 Rendering의 관계에서 이들을 수행하는 Shader와 Renderer의 차이점을 들 수 있겠다.


우선 Textur Mapping과 Shading의 차이점은 간단히 말해 Mapping Source(Bitmap Image)를 인위적으로 사용하는냐, 그렇지 않고 프로그램 내부에서 수학적인 계산에 의해 처리하느냐로 구분 지을 수 있다. 컴퓨터그래픽에서의 Texture라 함은 Scanner에 의해 Scan 받은 Bitmap Image를 Object 표면에 Coordinate라는 일정한 방향과 축으로 씌우는 작업이다. 이렇게 되면, 인위적으로나마 해당 물체는 원하는 재질을 가진 물체로 느껴지게 된다. 간단한 예로 구를 하나 만든 뒤, 표면에 세계지도를 입히면 지구본이 된다. 그러나 Texture Mapping으로 입혀진 물체를 Boolean(영국의 수학자-물체와 물체간의 상호 겹침 관계에 대한 수학적 이론을 정의했음)에 의해 쪼갤 경우, 쪼개진 부분은 Texture처리가 나타나지 않게 된다(물론, 현재는 이러한 기능이 옵션적으로 재 계산되어 쪼개진 부분에 다시 Mapping Coordination이 적용되지만...). 어쨌든 이는 Object 자체가 Solid 형식을 취하고 있더라도 Texture Mapping이라는 개념이 물체의 표면에 해당 Bitmap Image를 Mapping(사상-寫像)시키는 것이므로 내부에까지 베어들지는 않기 때문이다.


하지만 Shading은 Texture Mapping과는 달리 Bitmap Image를 사용하지 않고 수학적인 계산에 의해 Material을 표현하는데, 암벽, 나뭇결, 물표면 등의 경우 대부분 Fractal적인 계산에 가장 많이 기초한다. 프로그램마다 약간의 활용과 정의가 차이를 보일 수 있겠지만, 근본적인 정의는 서로 같다. 쉽게 말해 물체표면에 Bitmap Image를 Mapping시키지 않고 Color로만 입혔다면, 그것은 Shading이라고 볼 수도 있다.


프로그램마다 나름대로의 Shader가 있는데, 유명한 Shader의 경우, 여러 platform과 프로그램들 사이에서 동등하게 사용되고 작용한다. 대표적인 Shader로는 Lume, Dark Tree 등을 들 수 있으며, 이밖에도 수많은 Plug-in 형식을 취한 쉐이더가 있는데, 이들은 물체에 대해 매우 Natural한 표면질감을 연출해 준다.



이러한 Shader에 의한 Shading 처리의 가장 커다란 특징은 아무리 카메라를 Zoom In해도 똑같은 느낌으로 재 계산 처리해 준다는 점이다. Texture Mapping의 경우, 해당 Bitmap Image의 크기와 관련하여 카메라를 Zoom In 할 경우, Pixel이 거칠게 나타나 인위적인 느낌이 든다. 하지만 Shading의 가장 큰 단점은 시간이 오래 걸린다는 점이다. Texture의 경우, 해당 Mapping Source Image의 크기에 비례하므로 작업자가 해당 Object의 크기와 중요성에 입각해 Bitmap이미지의 크기와 세밀함을 차별화 할 수 있지만, Shading의 경우 전적으로 프로그램 내부에서의 계산에 의존하게 되므로 작업자는 Object에 걸맞은 질감과 시간을 잘 파악해서 선택적으로 사용해야 한다.


물론, 거의 대부분 Texture와 Shader를 적절히 혼용해서 사용하는 것이 일반적이다.


Old-User들의 경우, 예전 3D Studio에서의 IPAS 중 PXP를 잘 알고 있을 것이다. 이는 Procedural Mapping 개념인데, 라이트웨이브에도 이러한 기능이 플러그인 형식이 아닌 기본 기능으로 내장되어 있다. 이도 역시 Shader 기능이라고 볼 수 있으며, 라이트웨이브의 Procedural Mapping은 그 사용방법이 매우 단순하면서도 상당히 풍부한 응용성을 지닌 대표적인 Shading 기능으로 평가된다.



앞에서 설명한대로 Shading과 Texturing의 차이점에 대해서는 대부분 구별이 될 것이다.


하지만, Shading을 수행하는 Shader와 Renderer의 차이점에 대해서는 아직도 많은 초보자들이나 기존의 메니아들조차도 약간의 혼동을 하는 경우가 많다.


모두 알고있듯이 Rendering은 장면의 모든 구성요소(Camera, Light, Object 등)들과 Shader에 의한 계산 일체를 포함하는 그 작업자체를 일컫는 말이다.


각각의 Tool들이 나름대로의 Rendering Algorism을 갖추고 있으며, 그런 만큼 Renderer는 삼차원 프로그램에 있어서 장면에서의 모든 상황을 일괄처리하는 작업이므로 우리는 이를 Renderer라고도 하지만, Rendering Engine이라고도 표현하는 것이다. 대표적인 Renderer로는 PIXAR에서 개발한 RenderMan을 들 수 있는데, 이는 수학 그 자체라고 할 수 있을 정도로 비 전문인들이 Handling하기에는 이론적인 뒷받침이 필요하다. RenderMax을 지원하는 프로그램도 많은데, Houdini, Vertigo, Solid Thinking은 RenderMan을 훌륭하게 지원하는 이른바 Interface가 있는 RenderMan으로까지 불린다.


'중요' 카테고리의 다른 글

Maya Fluid 의 이해.  (2) 2011.10.26
Car Explosion on the set of The Avengers.  (0) 2011.10.22
삼각함수.  (0) 2011.06.09
RanderMan Shader.  (0) 2011.06.09
마라톤을 완주하는 방법.(지식채널e)  (0) 2011.06.01
중요 2011. 6. 1. 02:46

마라톤을 완주하는 방법.(지식채널e)

그것이 무엇이든 오늘해
지금하지 않는다면 그건 네가 아직도 나태를 즐기고 있다는 증거야.
그럴꺼면 더 이상 칭얼대지마!
                                                  김난도교수님.

 

'중요' 카테고리의 다른 글

Maya Fluid 의 이해.  (2) 2011.10.26
Car Explosion on the set of The Avengers.  (0) 2011.10.22
삼각함수.  (0) 2011.06.09
RanderMan Shader.  (0) 2011.06.09
Texture mapping과 Shading, 그리고 Rendering의 정의.  (0) 2011.06.09
영상 2011. 5. 29. 05:56

마이클 베이와 제임스 카메론의 대담.

'영상' 카테고리의 다른 글

Visual Effects: 100 Years of Inspiration  (0) 2011.08.14
Houdini Demo Reel 2011  (0) 2011.08.09
Jean Claude Nouchy.  (0) 2011.06.09
Mårten Larsson.  (0) 2011.06.09
WOW - Cataclysm Cinematic Intro  (0) 2010.10.20
realflow 2011. 5. 19. 15:19

Realflow의 BIN파일 Maya로 불러들이기.


realflow의 메뉴탭에서 Export - File Name option클릭
File name option가 뜨면 이름을 설정해주고 Frame/Extension order설정 (nama.#.ext)
시뮬레이션한다음 Maya를 키고 realflow의 탭에서 BIN클릭. 1파일을 클릭하면 된다.
그밖의 궁금한 점은 http://thevault.realflow.com/index.php으로.

사진설명. 클릭하면 크게 볼 수있다.

 

'realflow' 카테고리의 다른 글

realflow water with corona test.  (0) 2015.06.19
Realflow Type값 속성.  (2) 2011.05.19
realflow 2011. 5. 19. 14:49

Realflow Type값 속성.

Resolution : 해상도
density : 무게
int Pressure : 내부압력 - 높은 값일때 퍼지듯 나감
ext  Pressure : 외부압력 - 높은 값일때 모여서 나감
viscosity : 점성, 피, 우유, 물 , 오일등 수치 조절을 통한 표현가능.
surface tension : fild의 뭉치는 값을 제어
speed : 입자의 속도
V random, h random : random으로 나가게.

poly size : 나오는 입자의 사이즈 기본사이즈(0, 0.6)
filter method : yes로 하면 부드럽게 나온다.
relaxaion : 매끈하게 해준다.

생성한 mesh를 Node에서 더블클릭 만든 Emitter가 만들어져 있다.
Blend factor 값을 낮을 수록 날카로워 진다.

 

'realflow' 카테고리의 다른 글

realflow water with corona test.  (0) 2015.06.19
Realflow의 BIN파일 Maya로 불러들이기.  (0) 2011.05.19