안녕하세요.
앞번에는 3D모델링과 삼차원 형상기법에 대해 포스팅했었는데 오늘은 3D모델링 방식에 대해 포스팅하려고 한다.
먼저 앞서 포스팅한 부분에 대해 복습을 해보자면 !
3D모델링이란..? 컴퓨터 그래픽 분야에서 가상의 3차원 공간에 재현될 수 있는 입체 모형을 만드는 과정을 말하는 것으로 컴퓨터가 이해할 수 있는 형태의 데이터로 저장하는 것을 말한다.
그리고 이러한 3차원 형상 표현기법의 종류는 점과 곡선으로 형상 특징을 표현하는 와이어프레임 모델링(Wire Frame Modeling), 점, 곡선, 곡면으로 형상을 표현하는 서페이스 모델링(Surface Modeling), 곡면 모델에 곡면 간 연결 정보를 추가해 표현하는 솔리드 모델링(Solid Modeling) 세 가지 종류로 나눠진다고 설명했었다.
오늘 포스팅 할 3D 모델링방식에는 대표적으로 폴리곤 방식, 넙스 방식, 스컬핑 방식이 았는데 차례대로 알아보도록 하겠다.
모델링방식 중 가장 전통적인 방식으로 게임 그래픽에 많이 사용되는 Polygon은 다각형이라는 뜻으로 형태를 구성하는 점, 선, 면의 집합으로 메쉬(Mesh)를 제작하는 방식이다.
말 그대로 어떤 사물을 표현할 때 다각형의 모임으로 표현하는 것을 말하며 입체 공간에서 3개의 점을 선으로 이으면 하나의 면이 만들어지는데 이렇게 3개의 점으로 만들어진 면의 기본 단위를 바로 폴리곤이라고 한다.
최소단위는 삼각형이지만 모델링을 할 때는 작업자가 보기 편한 사각형을 기본 단위로 하며 모든 다각형 면을 삼각형의 조합으로 표시하면 화면 정보량이 많아져서 구조를 파악하기 어렵기 때문에 편의상 선을 생략해 사각형으로 표현하는 것이다.
폴리곤방식은 쉽고 직관적이며 표면을 추가하거나 변형하기 쉽다는 장점이 있지만 곡선 표현이 부족하기 때문에 엘리어싱(Aliasing) 그러니까 계산 현상(픽셀 형식으로 깨져 보이는 현상)이 발생한다는 단점이 있다.
그래서 폴리곤으로 곡선을 표현하려면 폴리곤 개수를 늘려야 하는데 이렇게 하면 높은 성능의 하드웨어를 요구하게 돼서 이 제약과 디자인 컨셉에 따라 최적화를 염두해서 계획을 세워야 하며 이러한 이유로 이 방식은 정밀함을 요구하는 자동차, 기계, 건축물을 설계할 때는 사용하지 않는 방식이며 폴리곤방식으로 모델링을 사용하는 프로그램은 3D맥스, 팅커캐드, blender, 마야 등이 있다.
이 방식의 모델링은 폴리곤의 개수에 따라 로우 폴리곤(Low polygon)과 하이 폴리곤(High Polygon으로 나뉘는데 전자의 경우 게임 엔진은 실시간으로 이미지를 구현해야 하기 때문에 사용하고, 애니메이션에서는 제약이 없기 때문에 후자를 사용한하며 기술이 발전됨에 따라 로우의 범위가 넓어져서 어디까지가 로우 폴리곤인지 판단하기 힘들어졌지만 대체적으로 게임에서 실시간으로 렌더링할 수 있는 수준을 이 Low polygon modeling이라고 한다.
넙스는 비정형 유리 B-스플라인(Non-Uniform Rational B-spline)의 약자로 폴리곤의 단점을 보안하기 위해 만들어진 기술로 정밀한 표현을 가능하게 해주며 수학적으로 선(Curve)을 그려서 형태를 잡고 그 형태의 선들을 이용(LOFT)해 면(Surface)을 구현하는 방식이다.
nurbs 구조는 유선형의 물체나 생명체 등을 모델링하는 데에 적합한 특성을 가지고 있지만 처리 속도가 폴리곤보다 느리다.
그리고 폴리곤 구조는 근본적으로 4각 폴리곤, 3각 폴리곤을 이용하기 때문에 유선형의 객체에서는 꺾어지는 부분이 만들어지는데 넙스 구조는 이러한 꺽이는 부분이 발생하지 않으며 객체의 유선형 구조를 곡선 그자체로 구성하게 되고 그래서 이 구조는 보다 완벽한 형태를 필요로 하는 고급 모델링에 사용된다.
넙스모델링의 최대 장점은 정밀한 설계가 가능하는 점!!!
높은 품질의 곡면체를 만들 수 있어 제품 디자인에 많이 사용되며 콘트롤러로 작용하는 점(Control Vertex)을 이용해 형태를 수정하거나 접합하는 방식으로 모델링하며 논리 연산과 테투리를 손질하는 트림 연산이 가능하다는 장점이 있다.
그리고 화면 정보량은 폴리곤 보다 단순하지만 모델링이 까다롭고 텍스처 맵핑을 할 수 없으며 모델링 시간이 오래 걸리며, 렌더링 시 하이 폴리곤으로 전환되어 데이터가 무거워 진다는 단점이 있기 때문에 게임이나 애니메이션에서는 사용하지 않는다.
영상에서부터 산업에 이르기 까지 높은 품질의 유기체 모델링을 요구하는 영역에서 다양하게 사용되고 있으며 정밀한 설계가 가능하기 때문에 건축이나, 정밀한 설계를 할 때 많이 쓰입니다만 모델링이 까다롭고 수정이 어렵기 때문에 실시간으로 모델이 변하는 애니메이션이나 게임분야에서는 사용되지 않으며 넙스 모델링 방식을 사용하는 프로그램은 카티아, 인벤터, 라이노, 케디안3D 등이 있습니다.
스컬핑 방식은 최근 유행하는 모델링 방식으로 점토로 석상을 만드는 과정을 3D로 옮겨온 것으로 기본적으로 조형에 대한 이해가 있어야 원하는 모델링을 할 수 있기 때문에 일정 기간 숙달 과정이 필요하지만 점토를 빚듯이 모델링을 한다면 그보다 더 직관적인 방식은 없을 것이라고 한다.
이 방식은 그 자체로 독립적인 결과물을 만들어 낼 수 있지만 게임이나 애니메이션에 사용하기 위해서는 겉 표면을 폴리곤으로 재가공하는 과정이 필요하며 기본적으로 하이 폴리곤이기 때문에 스컬핑 모델링 데이터를 어느 정도 보안하면서 폴리곤 수를 낮출 수 있는 대안적인 기술로 노말 맵(Normal Map)이라는 개념이 등장하게 되었으며 노말 맵은 겉표면의 3차원 방향 정보를 가진 2차원 이미지로 빛의 반사 값을 조절해 눈을 속이는 방식이다.
우선 하이 폴리곤이나 스컬핑 모델링을 한 뒤에 겉 표면을 로우 폴리곤으로 다시 모델링하고, 그 뒤 그 두 모델을 겹쳐 노말 맵을 생성하는데 작업할 때는 로우 폴리곤을 기본으로 노말 맵 값을 입혀 하이 폴리곤처럼 보이게 하며 데이터를 많이 사용하지 않으면서도 디테일한 부분을 채우는 합리적인 방식이라고 할 수 있다.
주로 동식물 모델링에 주로 사용되고 있으며 스컬핑방식을 사용하는 프로그램은 지브러시, Mudbox 등이 있다.
지금까지 3D모델링 방식에 대해 알아보았는데 다음 포스팅은 3D모델링 프로그램의 종류와 특징에 대해 알아보도록 하겠다.