모델링
2008.01.31 02:47

loft NURBS vs Hyper NURBS

주소복사 | 조회 수 473 추천 수 0 댓글 15
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
Extra Form
R10 Quickstart Kor.pdf 라는 제목의 메뉴얼을 읽고 있습니다.
예상했던 것처럼 질문들이 마구 생겨나기 시작했는데요;

일단 처음부터 헷갈려하거나, 멋대로 짐작하고는 이해했다고 생각하고 넘어가면 안 될 것 같아서
이렇게 여쭤봅니다. 만약에 이미 있는 답변인데 제가 검색에서 못 찾았을까봐 조금 소심해진 채로;


이 메뉴얼의 19쪽의 상단 부분에서는 Spline을 설명하고 있습니다.
그리고 이런 문장,
" 스플라인은 예를 들어 "Loft NURBS"를 사용하여 늘어난 표면 위에 와이어 프레임의 형태로 연속해서 놓여집니다.
그 다음의 짙은 오렌지 색 아이콘은 가장 주요한 CINEMA 4D 오브젝트들인 "Hyper NURBS 오브젝트"를 가지고 있는
그룹 아이콘입니다. "


제가 생각하기에
이건 꼭 CINEMA 4D에 관한 질문이라기보다
3D 툴에 익숙하지 않아서, 2D와는 개념이 다르기 때문에 이해 되지 않는 부분 같은데요.

저는 저런 친절한 설명에도 불구하고!
일단 Loft NURBS와 Hyper NURBS의 차이점이 무엇인지부터 궁금합니다.

예를 들면

어떤 툴에 관해 이야기 할 때,
'그건 넙스 기반이야.' 라고 말하기도 하고

'넙스를 먹여야 된다.' 는 표현도 많이 하잖아요?

몹시 혼란스러워요.
튜토리얼을 보고 따라해보면 모델링은 분명히 늘겠지만,
그 전에 뭔가 3D 4D 툴에 대한 이론적 이해?가 분명하게 있어야 할 것 같다는 생각이 정말로 드네요.


(신음을 한 번 하고)
아 왠지 이런 식의 질문을 앞으로 엄청나게 올리게 될 것만 같네요 ㅠㅠ
  • ?
    카이젤블루 2008.06.27 19:06 채택
    일단 결론부터 말씀드리자면,
    컴퓨터 그래픽스의 3D에서 사물(Object)을 표현하는 방법을 모델링(Modelling) 한다라고 하죠.
    NURBS 라는 것은 그 모델링 기술 중, 한가지를 말합니다.
    그리고, 시네마에서 등장하는 Hyper NURBS는 컴퓨터 그래픽스에서 통상적으로 이야기하는 NURBS하고는 개념이 다릅니다.

    여기서 통상적으로 이야기하는 NURBS 라는건, Non-Uniform Rational B-Spline 의 약자이고, 컴퓨터에서 좀 더 유기적이고 부드러운 곡선을 생성하기 위해서 만들어진 기술입니다. 일러스트레이터나 코렐 드로우 등에서 사용하는 Bezier Spline의 업그레이드 확장판이죠.
    당연히 얘네들이 사용하는 개념보다 몇배 더 복잡하며, 곡률과 곡선과 곡면을 표현하는데 있어서 복잡한 수학 공식들이 동원되는데 미분, 적분 방정식 등은 기본입니다.
    좀 더 자세한 내용은 제가 공학도까지는 아닌데다가, 거기까지 아실 필요도 없답니다. ^^;;;

    이 기술이 나온 이유는 기존에 Polygon 이나, B-Spline 을 사용해서 표현되는 Line 이나, Curve 를 가지고는 기계, 자동차나 비행기, 선박 디자인, 제조 등에서 필요한, 아주 미려하며 아름다운 곡면이나, 곡선을 표현하기에는 정확하지도 않고, 한계가 명확하다는 데 있었습니다.
    그 때문에 NURBS 기술이 실용화되면서, 대부분의 CAD/CAM/CAE 툴에선 NURBS 를 기본으로 채용하게 되죠.

    영화나 애니메이션에 컴퓨터 그래픽스가 도입되기 시작하던 초창기에는 캐릭터 디자인과 애니메이션에까지 NURBS를 사용하게 되었는데, NURBS 기술은 바로 이 때, 치명적인 단점이 있다는 것을 깨닫게 됩니다.
    복잡한 대량의 수학 공식이 동원되는 특성때문에 기술을 운용하는데에만 컴퓨터의 자원을 너무 많이 소모한다는 것이죠.
    게다가 제품 디자인, 자동차, 비행기, 선박류 디자인과 같이 다분히 정형화된 곡선, 곡면과는 비교가 안될 정도로, 불규칙적인 곡선이 난무하는 캐릭터나 애니메이션 분야에서 NURBS 기술은 그다지 적절치 않다는 사실을 깨닫게 됩니다.

    여러가지 다양한 곡면을 표현하는데는 한계가 분명한 Polygon Mesh 기술과 빠르고 부드럽게 운용하는데는 너무 과중한 자원을 필요로 하는 NURBS 기술에 다음 타자로 등장한 기술이 통상, Subdivision surface 라고 불리는 기술입니다.

    이것은 한마디로 이야기하면 Polygon 의 업그레이드 형이며, Polygon 과 NURBS 기술의 장점만 취한 듯한 기술이라고 할 수 있습니다.
    다시 말하자면, 곡선과 곡면을 표현하는데 있어서, 정점(Vertex)과 정점 간을 필요한 만큼 잘게 분할하여 보간하는 방법을 사용하게 됩니다.
    이는 NURBS 보다는 복잡하지 않기 때문에, 운용하는데 훨씬 가볍다라는 장점을 갖게 되며, Polygon 보다는 훨씬 더 정확하고 미려한 곡선과 곡면 표현이 가능하다는 장점까지 갖게 됩니다.

    이렇게 어려운 글로만 설명하기에는 계속 물음표만 띄우실게 분명하기 때문에, 참조 그림을 몇가지 소개해드리도록 하죠.

    [http://upload.wikimedia.org/wikipedia/en/f/fb/Dolphin_triangle_mesh.png]

    위 그림은 Polygon Mesh 입니다.




    [http://upload.wikimedia.org/wikipedia/en/3/39/Motoryacht_design_i.png]

    위 그림은 NURBS 를 사용하는 가장 대표적인 CAD/CAM/CAE 툴인, SIEMENS NX 툴의 선박 디자인 운용 장면입니다.
    곡선과 곡면이 다르죠?




    [http://upload.wikimedia.org/wikipedia/commons/f/f2/Spline01.gif]

    위 그림 역시, SIEMENS NX 툴의 운용 장면입니다.
    우리 유저그룹의 이단비님이 고수십니다.



    [http://upload.wikimedia.org/wikipedia/commons/3/33/Catmull-Clark_subdivision_of_a_cube.svg]

    위 그림은 Subdivision Surface 의 예입니다.
    (Catmull-Clark 방식의 Cube 입니다. 그림 확장자가 svg이므로, 확인 안되신다면 위 링크를 클릭해 주시기 바랍니다.)




    그리고, 요약하자면 다음과 같습니다.
    컴퓨터가 표현하는 그래픽스에서 3D 그래픽스는 현재, 다음의 기술들이 주력으로 사용되고 있습니다.

    1. Polygon Mesh 는 최소 3개 이상의 다각형으로 이루어진 도형(Polygon)으로 사물(Object)을 표현하며, 컴퓨터가 자원을 운용하기에는 비교적 가장 가벼운 기술이나, 유기적인 곡선이나 곡면을 표현하는데에는 한계가 명확하다.

    2. NURBS 는 복잡한 수학 공식들로 나타내는 그래프를 이용하여, 곡선(Curve)과 곡면(Surface)을 조합, 사물을 표현하므로 상당히 미려하고도 정확한 곡선과 곡면 표현이 가능하지만, 컴퓨터가 자원을 가장 많이 소모하는 한계가 있다.

    3. Subdivision Surface 는 Polygon 의 업그레이드형 기술로 NURBS보다는 훨씬 자원의 여유를 가지며, Polygon 과 다르게 정확하고도 미려한 곡선과 곡면이 어느정도 가능하다는 장점이 있다.

    그래서,
    우리가 함께 공부하고 있는, Cinema 4D 는 Polygon 방식을 사용하며, 그 중에서도 Subdivision Surface 방식을 사용하고 있습니다.
    캐나다, NEWTEK 사의 LightWave 3D 라는 경쟁 툴이 있는데, LightWave 3D와 함께 Subdivision 방식의 초창기를 이끌었던 툴이 여기, Cinema 4D 였습니다.
    하지만, LightWave 3D 에서도, Cinema 4D 에서도 마케팅의 일환이었는지, Subdivision 이라는 말을 사용하지는 않았습니다.
    LightWave 3D는 "Meta-NURBS"라는 용어를 사용했고, Cinema 4D는 바로 "Hyper-NURBS"라는 말을 사용했습니다.

    현재, 이 Subdivision Surface 는 기술적으로 많은 발전을 이루어서, Cinema 4D도 해당 기술 발전에 선도적인 역할을 수행해 왔다고 할 수 있고요. 원래 내부 구조 자체가 굉장히 유기적이면서도 직관적이었던 점과 맞물려서 가장 발달된 모델링 툴을 갖게된 셈이라고 할 수 있습니다.

    그 한 예로, 말씀하신 "Loft NURBS" 라는 것은 정통 NURBS 툴에서나 사용되는 기법입니다.
    (Polygon 베이스에서는 Extrude 라는 것이 비슷하게 동작하죠.)

    다시 한번 말씀드리지만, Cinema 4D는 Polygon 베이스가 업그레이드 된, Subdivision Surface 를 사용하는 것이지, 정통 NURBS 는 분명히 아닙니다. 그럼에도 Loft 같은 NURBS 기반 툴 기법이 사용될 수 있다는 것은 그만큼 Cinema 4D의 유연성이 탁월함을 증명해준다 할 수 있습니다.

    참고가 되셨길 바랍니다. ^^
  • ?
    박씨 2008.06.27 19:06
    굿 카이젤 수고하셔쑤~~
  • profile
    ChoiGeol 2008.06.27 19:06
    안녕하세요? NURBS를 가지고 열심히 학위논문을 쓰고 있는 최걸입니다.

    카이젤님의 답변에 감동먹었습니다.
    카이젤님 답변에 추가를 하자면... NURBS만을 구성하는 데 있어서는 미분, 적분 개념은 안 들어갑니다.

    다만 곡면의 Curvature를 계산해야 한다면 미분, 적분 개념이 들어갈 수도 있지만, 그것마저도 NURBS에서는 basis function의 recursive rule로 계산합니다.

    한 마디로 미분, 적분 전혀 안 해도 curvature를 계산하는 것이죠.

    NURBS의 basis function은, Finite Element Method(유한요소법)의 shpae function과 비슷하게, partion of unity(주어진 구간 내에서의 어느 점을 택하더라도 basis function value의 합은 1이 됨.)과 compact support(주어진 구간의 시점과 종점은 고정됨)를 만족하는 것이죠.

    B-Splines는 NURBS의 한 종류라고 생각하시면 되고요. NURBS에서 각 control point의 weight가 모두 1이라면 B-Splines가 됩니다. 또한 NURBS에서 Knot vector를 지정하게 되는데요 Knot vecot의 크기는 degree와 control points의 수에 의해 결정되며, knot vector의 시점과 종점의 compact support를 결정하는 knot은 degree+1만큼 존재하게 됩니다.

    더 많은 설명하고 싶어지지만, 자꾸 전문 용어가 나오게 되기 땜시 여기서 스탑하겠습니다. 아는 척해서 죄송해여...ㅋ
  • profile
    ChoiGeol 2008.06.27 19:06
    한 가지 더 덧붙이자면, NURBS가 CG에서 무겁게 느껴지는 이유는 복잡한 수학공식이어서라기 보다는, recursive rule을 사용하기 때문에, n차 order의 basis function을 계산하기 위하여 n+1번의 recursive 계산을 수행해야 되기 때문입니다.

    즉, control point의 변화에 따라, 적어도 degree에 의해 결정되는 local compact supprt로 인해 해당 basis function을 oder 0부터 n까지 반복적으로 계산해야 됩니다.

    이렇게 local하게 basis function을 구한 것을 global하게는 control point 정보와 곱해서 더해야 하기 때문에 계산량이 엄청 증가하게 됩니다.

    특히 surface를 생성하려면 tensor product를 해야 하는데 계산량이 상상을 초월합니다.
  • ?
    P. 2008.06.27 19:06
    말로만 듣던 카이스트박사님이 바로 최걸님 이셨구낭~
    흐미..앞으론 최걸님 앞에서 아는체 말아야 겠다..흐흐
  • ?
    카이젤블루 2008.06.27 19:06
    끼얏호~ 역시~ KAIST 박사님... =ㅁ=;;;
  • profile
    sleeper 2008.06.27 19:06
    ㅠㅠ 저는 maxon이 차린 밥상에 숟가락만 들게요...
  • profile
    이단비 2008.06.27 19:06
    최걸님 답변에도 감동먹었습니다. 대부분 이해가 가지는 않지만요.. 크핫

    머 김빠지는 소리를 하는건 아니지만.. 최걸님이야 넙스로 학위논문을 쓰시니까 그렇지만...

    여러분..... 암튼 좋다는거 아니겠습니까? 우리는 이 좋은걸 그냥 사용만 하면 되니 얼마나 행복합니까?

    최걸님 같은 훌륭한 '예술' 공학도가 계시니.. 우린 행복합니다.
  • ?
    maybe36 2008.06.27 19:06
    암튼 좋다는거 아니겠습니까? 우리는 이 좋은걸 그냥 사용만 하면 되니 얼마나 행복합니까?
    동감입니다. 우린 잘 쓰기만 함되요.
  • profile
    총각김치 2008.06.27 19:06
    이열~~~이런 전문가적인 답글들을...오늘도 많이 배웁니다~~행복하네요
  • ?
    매드카우 2008.06.27 19:06
    오.. 최걸님의 답변은 너무 어렵긴하지만~ 어쨋든 좋은정보네요^^
  • ?
    폰데링 2008.06.27 19:06
    저도 완전히 감동했어요.

    당연히 이 한 마디로는 모자라지만,
    감사합니다 ㅠㅠ
  • ?
    eyefake 2008.06.27 19:06
    헐...감동의 리플들이네여...^^
    잘 배웠습니다~~
  • ?
    향초 2008.06.27 19:06
    넙스의 개념
  • ?
    개미0323 2010.02.12 15:06
    와...넘 좋은 내용 감사드려요~ 역시 이곳은 저에겐 별천지군요.ㅠ

질문과 답변

question and answer

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 일반 Cinema 4D Education 학생용 라이센스 사용방법 2 그래바 2020.09.03 18252
공지 Octane 옥테인 크래시 관련 자주 올라오는 질문들과 해결하는 법을 정리해보았습니다. 13 file 이효원 2020.04.19 48857
공지 [필독] 단톡방 질문 방식 관련 공지사항 4 file 권오훈 2019.06.27 12872
공지 일반 [필독] 질문 게시판 유의사항 ! 권오훈 2019.06.27 4810
2865 모델링 하이퍼넙스..깨지는 현상..질문입니다. 3 file irisoun 2008.02.13 238
2864 모델링 셀렉트 질문이랑 익스투르드 인너 질문... 6 eyefake 2008.02.13 284
2863 모델링 볼트,너트 3 하루하루 2008.02.12 258
2862 프로그램 3D Fluff 트레이닝 강좌 어떻습니까? 7 홍범석 2008.02.12 247
2861 모델링 에디터블 옵션 중에 엘리먼트 6 motionz 2008.02.12 196
2860 Sky Object 생성후 환경맵(HRD) 안나오게 하는 방법 4 호떡 2008.02.12 263
2859 모델링 움직이는 선을 만들고 싶어요 4 jayj 2008.02.12 236
2858 프로그램 시네마 4d를 공부하는 학생입니다. 1 키다리 2008.02.12 205
2857 기타 번외질문- tp파일 인코딩에 관한 질문입니다.. 4 김기종 2008.02.11 273
2856 모델링 CINEMA 4D R10 Quickstart 눈알 만들기 7 file 병아리 2008.02.11 268
2855 모델링 버택스 무브시에 스냅이 어떻게 해야 하나요 2 noir 2008.02.11 313
2854 모델링 [re] Close Hole 팁 2가지 5 file 정석 2008.02.11 214
2853 애니메이션 카메라의 패스라인 조절은? 3 CharybDis 2008.02.11 239
2852 모델링 에디터블 후에... 지웠던 면을 클로즈 로 메우려고 하는데요. 중간에 엣지 는 살릴 수 없나요? 2 motionz 2008.02.11 191
2851 모델링 루프엣지 익스트루드관련요~ 1 츄파춥스 2008.02.11 330
목록
Board Pagination Prev 1 ... 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 ... 1769 Next
/ 1769
닫기

마이페이지

로그인을 해주세요