3D 모델링 및 VFX/3D 모델링 : 블렌더 연습.

[ 블렌더 연습 ] 블렌더 용어 및 개념 정리.

안다미로 : 담은 것이 그릇에 넘치도록 많게. 2024. 8. 19. 00:34

 

 

 

 

[ 블렌더 연습 ] 블렌더 용어 및 개념 정리.

 

 


 

  ∇ Mesh.

           Vertex(점), Edge(선), Face(Poly,면) 또는 이것들의 집합을 의미합니다.

           Mash는 Edit Mode(Tab버튼)에서 조작 가능한 개념이라고 생각하면 편합니다.

 

  1개의 박스를 만들게 되면,

   Vertex(점)은 8개,  Edge(선)는 12개, Face(면) 6개로 이루어진, Mesh이며

   박스를 구성하고 있는 것들 중 Face 1개도 Mesh라고 할 수 있습니다.

 

 

  ∇ Geometry.

         공간 상에 존재하고, 위치값이 존재하는 모든 오브젝트를 의미합니다. 

         Mesh, Curve, Instance, Volume 등을 포함하는 개념입니다.

 

         모든 Mesh는 Geometry라고도 할 수 있지만, 모든 Geometry는 Mesh는 아닙니다.

         Geometry Nodes를 포함한 Modifier로 인해 변형되는 것은 Geometry입니다.

         변형된 Geometry를 Apply하면 Mesh가 변형되는 것 입니다

      

 

스프링클들이 뿌려진 도넛을 만들기 위해서는 

 

Sphere를 하나 만들어주고, 이 Sphere를 하나 만들어주고

이 Shpere 오브젝트를 원본으로 사용하여

 

Geometry Node를 통해 Instance(객체지향 코딩할 때, 만들어주는 인스턴스 개념과 비슷)로

여러 개의 스프링클 조각들을 뿌려줍니다.

 

+ instance : 하나의 객체를 복제(Shift+D)하여 여러 개의 객체를 생성(Alt+D)하는 기능을 의미.

                      - 원본 객체의 데이터를 공유하면서도 여러 위치에 동일한 객체를 배치 가능합니다.

                      - Alt+D로 생성된 객체(인스턴스)는 원본 오브젝트와 데이터를 공유하며,

                       원본 객체의 변경 사항이 인스턴스에도 반영됩니다.

 

 

  ∇ Object.

       가장 포괄적인 개념으로, 

        Mesh와 그에 적용된 Material 등과 같은 속성들을 포함하는 개념입니다.

       [ 3D 공간 내에서 조작할 수 있는 모든 요소를 의미합니다.]

        오브젝트는 다양한 형태로 존재할 수 있으며, 각기 다른 용도로 사용됩니다.

 

             √ 오브젝트 생성 : 기본적으로 메쉬,곡선,표면,메타볼,텍스트 등의 형태로 생성 가능/

                                           + 가장 간단한 메쉬 오브젝트로는 큐브, 구, 원기둥 등.

 

             √ 오브젝트 편집(Tab버튼) : 생성된 오브젝트는 편집 모드에서 모양을 변경 가능

 

             √ 오브젝트 속성 : 속성 창에서 조절 가능[오브젝트의 배치와 장면 구성에 중요한 역할]

             √ 오브젝트 관리 : Outliner 창을 통해 장면 내의 모든 오브젝트를 관리.  [오브젝트의 계층 구조 관리 ]   

 

 


 

 

 ∇ Shader.

     3D 환경에서 렌더링하는 동안 빛을 처리하고 계산하는 프로그램을 의미하며,

     이 과정 전반을 Sahding이라고 합니다.

     [ 3D 모델의 표면이나 볼륨에 빛이 어떻게 상호작용하는지를 정의하는 요소 ]

 

    Shader는 주로 색상, 반사, 투명도, 발광 등 다양한 시각적 특성을 조절하는데 사용됩니다.

 

     이 때 Material이 어떤 식으로 처리될지 정해서 처리해줍니다.

     블렌더 프로그램에서는 Shader Node를 'Shader'라고 하기도 해서 Material가 혼용됩니다. 

 

      ex)

 

  1. BSDF Shader: 물체 표면에서 빛의 반사, 굴절 및 흡수를 설명합니다. BSDF(양방향 산란 분포 함수)는 빛이 물체에 닿았을 때 어떻게 반사되거나 투과되는지를 계산하는 데 사용됩니다.
  2. Emission Shader: 물체 표면이나 볼륨에서 빛을 발산하는 것을 설명합니다. 이는 발광 효과를 줄 때 사용됩니다.
  3. Volume Shader: 물체 내부에서 빛이 산란되는 방식을 설명합니다. 주로 안개나 연기 같은 효과를 표현할 때 사용됩니다.
  4. Background Shader: 환경에서 방출되는 빛을 설명합니다. 이는 장면의 배경을 설정할 때 사용됩니다.

 

 ∇ Material .

         Shading을 하는데 필요한 정보를 가지고 있는 것, BSDF 하나 혹은 여러개로 구성됩니다.

        Material은 객체가 어떤 물질로 이루어져 있는지를 나타내며, 색상과 질감을 설정합니다.

       예를 들어, 플라스틱, 금속, 유리, 천 등의 다양한 재질을 표현할 수 있습니다

 

  1. Shader 사용: Blender는 다양한 Shader를 제공하여 Material의 특성을 정의합니다. 주요 Shader에는 플라스틱, 유리, 금속, 천, 피부, 연기, 불 등을 표현할 수 있는 물리 기반 Shader가 포함됩니다.
  2. 노드 기반 시스템: Material 설정은 노드 기반 시스템을 사용하여 유연하게 조정할 수 있습니다. 이를 통해 다양한 질감과 효과를 구현할 수 있으며, Toon Shading과 같은 독특한 스타일의 Material도 만들 수 있습니다.
  3. Material 관리: Blender에서는 Material을 추가, 제거 및 관리할 수 있는 다양한 도구를 제공합니다. 예를 들어, Material Library VX와 같은 애드온을 사용하여 Material을 저장하고 불러올 수 있으며, 프로젝트 간에 공유할 수 있습니다.

 

       


블렌더에서는 질감 작업을 할 때 Edit Mode에서 Mesh를 변형하는 것이 아니라, Shader를 통하여 

 표면의 높낮이에 변화를 주거나 울퉁불퉁한 효과를 주는 방법을 사용 가능합니다.

 

Bump Map, Normal Map, Displacement Map을 이용하는 것인데, 이 3가지를 적절하게 사용하면

Mesh를 직접 수정하는 것보다 훨씬 효율적으로 원하는 형태, 모습을 만들 수 있다.

 

 

 

 

 ∇ Bump.

실제 Mesh를 변형하지 않고, 마치 그런 것처럼 울퉁불퉁한 것처럼 보이게 하는 작업입니다.

실제로 Mesh가 변형된 것이 아니기 때문에, 모서리/실루엣은 변하지 않습니다.

 

그래서 뷰포트 각도에 따라 가짜인 것이 보일 수 있습니다.

흑백 이미지이며, 단순 높낮이 값에 대한 정보를 가지고 있습니다.

 

50%회색이면 변화 없이 그대로이고, 

흰색에 가까워지면 표면이 높아지고, 어두워지면 낮아지게 됩니다.

범프

 

 

 ∇ Normal.

Bump의 발전된 형태입니다.

Bump와 마찬가지로 실제 Mesh를 변형하지 않고, 그런 것처럼 보이게 합니다. 


RGB 값으로 이루어진 이미지로, X, Y, Z 축에 대한 정보를 가지고 있습니다.

Bump가 단순 높낮이에 대한 정보만 가지고 표현하는 것에 비하면, 더 많은 정보를 가지고 표현하는 것 입니이다.

흑백 이미지와 다르게 제작과 편집이 어렵습니.
Normal Map 생성 사이트(https://cpetry.github.io/NormalMap-Online/)를 통해 제작할 수 있습니다.

노말맵

잘 보면 모서리 부분은 곡률이 들어가지 않고 있는 것을 볼 수 있습니다.

Normal Map 이미지는 RGB 값을 가진 이미지이기 때문에 Color Space를 sRGB로 설정합니다.

 

 

 

 ∇ Displacement.

 

실제 Mesh를 변형합니다. 그렇기 대문에 실루엣 자체도 변형되며 사실적으로 표현이 됩니다.

굴곡이 표현될 만큼 충분히 Mesh가 나눠져 있어야 합니다.

흑백 이미지이며, 렌더 시간이 상대적으로 오래 걸립니다.

 Displacement는 Plane의 Mesh를 변형하여 실루엣이 변형된 것을 볼 수 있습니다.
마찬가지로 흑백 이미지이기 때문에, Image Texture 노드의 Color Space를 Non-Color로 설정해 주어야 합니다.

 

Displacement Map을 사용할 때는 추가로 신경 써야 할 부분들이 있습니다.

적용할 때 그리고 적용했는데 결과가 제대로 나오지 않을 때도 이 사항들을 확인해 볼 필요가 있습니다.

(아래 설명과 이미지 참고)

  1. Render Preview 모드에서만 확인이 가능하기 때문에, Render Preview 모드로 바꿔줍니다.
  2. Eevee에서는 지원하지 않고 Cycles에서만 지원하기 때문에, 렌더 엔진을 변경해 줍니다
  3.  (Render Properties - Render Engine - Cycles)
  4. Cycles로 변경 후, Material Properties - Settings - Displacement - Displacement and Bump로 설정해 줍니다.
  5. 충분한 Mesh를 만들어줍니다. (Modifier를 이용해서 Mesh를 추가할 수 있습니다. → Modifier Properties - Subdivision Surface 추가 - Levels Viewport / Render 조절 (**Levels Viewport는 Viewport에서 볼 때 적용되는 값이고, Render는 실제 렌더 될 때 적용되는 값 입니다. 수치가 높아질수록 프로그램이 버벅거리거나 렌더 시간이 길어질 수 있기 때문에 상황에 따라 조절하면서 작업합니다.))

 

 

++ 큰 굴곡/변형이 필요한 경우에는 Displacement를 사용하고,

     피부의 모공, 작은 주름, 스크래치 등의 작은 디테일한 작업을 할 때는 Bump나 Normal을 사용하는 것이 좋습니다.