3ds Max에서 씬을 최적화하는 방법

렌더링 가이드 : 지오메트리를 통해 3ds Max에서 씬을 최적화하는 방법 소개

렌더링에 제대로 최적화되지 않아 렌더링 시간이 길고 RAM 사용량이 많으며 하드 드라이브에 불필요한 크기가 발생하는 수많은 프로젝트를 봐 왔습니다. 개인 프로젝트와 렌더팜에서 렌더링 된 수백 개의 프로젝트에서 작업한 경험은 렌더링에 일반적인 특정 주제와 스레드를 식별하는 데 도움이 되었습니다. 저는 제가 가진 지식을 활용하여 이러한 공통점을 해결하고 보다 빠르고 안정적인 렌더링을 목표로 하는 기술을 소개하는 3ds Max의 씬 최적화에 관한 일련의 튜토리얼을 만들기로 결정했습니다. 가라지팜의 서비스 지원팀과 다른 팀원들은 이러한 목표를 실현하는 데 중요한 역할을 할 것입니다.

그렇다면 3ds Max 렌더링에 대한 시리즈부터 시작하겠습니다.

최적화되지 않았거나 제대로 최적화되지 않은 씬의 일반적인 부정적인 영향 :

  • RAM 사용량이  많으면 렌더링 중에 씬이 충돌하거나 렌더링 속도가 너무 느려질 수 있습니다. 이는 단지 프로그램이 하드 드라이브의 임시 데이터를 지속적으로 쓰고 읽어야 하기 때문입니다. 하드 드라이브는 RAM보다 1000배 느리고 SSD도 훨씬, 훨씬 느립니다.
  • 폴리 카운트, 품질 및 샘플링과 같은 씬 설정이 지나치게 과장되면 렌더링 시간이 길어져 마감 기한을 놓치거나 렌더팜을 처리할 때 더 높은 비용이 발생할 수 있습니다.
  • 프로젝트에 더  많은 하드 드라이브 공간(씬과 어셋 모두 포함)이 필요할수록 3ds Max에 로딩하는 시간이 길어집니다. 로컬에서 렌더링하는 것은 큰 문제가 아니지만 네트워크 렌더링에서는 렌더링 시간이 길어질 수 있습니다. 또한 상업용 온라인 렌더팜의 경우 로딩 시간이 길수록 일반적으로 더 많은 비용이 듭니다.

이 가이드는 누구를 위한 것입니까?

이 가이드는 로컬에서 또는 네트워크에서 프로젝트를 렌더링할 때 너무 많은 리소스를 사용하여 불쾌한 경험을 한 모든 3D 아티스트를 위한 것입니다.

초급 및 중급 3ds Max 사용자를 위한 유용한 최적화 기술을 찾을 수 있을 것입니다. 고급 사용자인 경우 대부분 이미 알고 있을 수  있지만 여기서 역시 새로운 정보를 찾을 수 있습니다. 자신이 모르고 있다는 사실을 모르는 것이라는 말이 있습니다.

아래 나열된 최적화 방법은 렌더링 시간이 조금 증가하더라도 애니메이션의 프레임 수를 곱하기 때문에 애니메이터에게 특히 유용합니다.

이 가이드의 목적은 간단합니다. 렌더링 시간과 RAM 사용량을 줄이고 프로젝트의 창의적인 측면에 더 많은 시간을 할애하여 시간과 비용을  절약하고 고객 만족도를 높이는 것입니다. 또한 가라지팜이 3ds Max를 위한 Vray에서 렌더링 시간을 어떻게 향상시켰는지에 대한 성공 사례도 읽어 보실 수 있습니다.

PART 1. 지오메트리

씬의 지오메트리(폴리 카운트)가 많을수록 씬 파일이 커지고 렌더링에 더 많은 RAM이 필요하며 렌더링 시간이 더 오래 걸립니다.

씬에서 Polycount를 줄이기 위해 다음과 같은 방법을 시도할 수 있습니다.
   

1.1 Polycount를 확인합니다.

  • 활성 Viewport에서 통계 디스플레이를 활성화하려면 7"을 누릅니다.
  • 또는 Viewport의 왼쪽 상단 모서리에 있는  '+'를 클릭하고 'xView' 및 'Statistics 표시'를 선택합니다.
3ds Max에서 씬을 최적화하는 방법

Viewport("+")의 왼쪽 상단 모서리를 클릭하여 추가 통계 옵션을 설정하거나 해제할 수 있습니다. → "Configure Viewports" → "Statistics" 패널을 클릭합니다.

3ds Max에서 씬을 최적화하는 방법
  • 합계 –  전체 씬에 대한 통계만 표시합니다.
  • 선택 – 현재 선택 항목에 대한 통계만 표시합니다.
  • Total + Selection – 전체 씬 및 현재 선택 항목에 대한 통계를 표시합니다.

3ds Max 통계와 그 의미에 대해 자세히 알아보려면 Autodesk 도움말을 참조하십시오.

1.2 무거운 모델을 찾습니다.

이름으로 선택" 창을 열고("h"를 누름) 메뉴에 "Faces" 열을 추가합니다.

이름 표시줄을 마우스 오른쪽 버튼으로 클릭하고 "열 구성" 옵션을 선택하면 됩니다. 추가 열 목록이 표시되며, 그 중 하나는 "Faces"입니다.

이 열은 폴리곤 수를 기준으로 씬의 모든 오브젝트를 정렬합니다.

3ds Max에서 씬을 최적화하는 방법

1.3 불필요한 지오메트리를 제거합니다.

찾을 곳은 다음입니다 :

  • 카메라 뷰 외부에 있으며 최종 렌더링에 표시되지 않는 지오메트리를 모두 삭제합니다.
  • 내부에 숨겨져 있거나 다른 오브젝트에 의해 덮여 있는 지오메트리를 모두 삭제합니다.
  • 숨겨진 도면층의 숨겨진 모델 및 모델, 모델링에 사용한 도면, 가져온 CAD 도면 등을 모두 삭제합니다.

숨겨진 오브젝트를 어떻게 찾을까요?

  • 이름 별  선택' 창에서 '모두 표시' 아이콘을 클릭합니다.
  • 위의 장에서 설명한 "면"과 같은 방법으로 "숨겨진" 열을 추가하여 씬에서 숨겨진 오브젝트를 찾을  수 있습니다. 숨겨진 도면층의 숨겨진 오브젝트와 오브젝트는 "숨겨진" 옵션이 체크 표시됩니다.
3ds Max에서 씬을 최적화하는 방법

프로젝트를 가져오거나 작업하는 동안 장면 외부에서 손실된 모델을 찾으려면 뷰포트를 마우스 오른쪽 버튼으로 클릭하고 "숨겨진 레이어의 오브젝트 숨기기 해제" 옵션을 선택한 상태에서 "모두 숨김 해제" 옵션을 선택할 수 있습니다. 그런 다음 최대 인터페이스의 오른쪽 하단 모서리에서 "확대 범위" 옵션을 선택하고 "ctrl + a"를 눌러 씬의 모든 모델을 선택합니다. 분실된 모델이 씬에 표시됩니다.

3ds Max에서 씬을 최적화하는 방법

1.4 사본 대신 인스턴스를 사용하십시오.

3ds Max에서는 오브젝트를 복사본이나 인스턴스(또는 일종의 인스턴스인 참조)로 복사할 수 있습니다.

메쉬를 "복사본"으로 복사하면 3ds Max는 하드 드라이브와 RAM 모두에 씬에 저장될 또 다른 메쉬를 생성하여 폴리카운트를 높입니다.

그러나 "인스턴스"를 만드는 경우 3ds Max는 씬의 다른 위치에 메시 복사본이 있다는 정보만 저장하지만 메모리와 씬 파일에는 단일 메쉬의 데이터만 유지합니다.

인스턴스를 사용하면 엄청난 수의 복사된 오브젝트를 씬에 넣을 수 있지만 실제로 동일한 양의 RAM을 사용하고 단일 오브젝트와 유사한 파일 크기를 가질  수 있습니다.

이 방법의 유일한 단점은 이러한 메쉬가 초기 오브젝트와 동일하게 유지되어야 한다는 것입니다.

예시

3ds Max에서 씬을 최적화하는 방법

1.5 모델을 최적화합니다.

카메라와의 거리나 필요한 디테일 수준에 따라 모델을 최적화하십시오.

최종 렌더링의 가시성에 맞게 모델의 상세 수준을 조정합니다. 예를 들어, 시각화에 자동차가 필요하지만 멀리 떨어져 있을 경우 간단한  모델을 사용하거나 최적화하십시오. 거리에 있는 연석이 카메라에 가까이 있으면 기울어질 수 있지만, 멀리 있는연석에는 날카로운 가장자리가 있을 수 있습니다.

팁: 필요하지 않은 경우 Turbosmooth 또는 Meshsmooth modifiers를 추가하지 말고 "반복" 값을 가능한 낮게  유지하십시오.

1.6 3ds Max 최적화 modifier를 사용합니다.

모형의 폴리 수를 빠르게 줄일 수 있지만 모양이 변형될 수 있습니다.

오브젝트가 카메라와 멀리 떨어져 있거나, 높은 폴리 오브젝트(Turbosmooth modifier를 사용한 후 무너진 자동차 모형  등)일 때 사용하는 것이 가장 좋습니다.

원하는 세부 수준은 유지하되 폴리곤 수는 줄일 수 있도록 modifier 설정을 사용합니다.

  • 모델에 더 많은 세부 정보를 작성하려면 추가 폴리곤이 필요합니다. 그렇기 때문에, 평평한 표면에 촘촘한 메쉬를 가진 모델이 이러한 종류의 최적화를  적용할 수 있는 가장 좋은 후보입니다.
  • 바위처럼 모양이  불규칙한 모형은 모양새를 유지하기 위해 정확한 모양을 유지할 필요가 없기 때문에 최적화 수식어를 적용하기에 좋은 후보이기도 합니다.

씬 크기와  리소스 사용을 줄이려면 렌더링 전에 특히 네트워크를 통해 렌더링하려는 경우 최적화 modifier를 적용하여 모델을 축소해야  합니다.

팁: 문제가 발생할 경우 이전 설정으로 되돌릴 수 있도록 변경하기 전에 항상 씬의 복사본을 저장해야 합니다.

Autodesk는 3ds Max에 대해 modifier를 최적화합니다.

1.6.1 – modifier 최적화

Optimize Modifier를 사용하면 오브젝트의 면과 정점 수를 줄일 수 있습니다. 따라서 지오메트리가 단순화되고 렌더링 속도가 빨라지는 동시에 적절한 이미지 품질을 유지할 수 있습니다. 사전/사후 판독은 각 변경 사항에 따라 감소에 대한 정확한 피드백을 제공합니다.

modifier 최적화에 대한 자세한 내용은 여기를 참조하십시오.

1.6.2  – MultiRes Modifier
MultiRes Modifier는 정점 및 폴리곤 수를 줄여 모델을 렌더링하는 데 필요한 메모리 오버헤드를 줄입니다. MultiRes는 Optimize modifier에 비해 몇 가지 장점을 제공합니다. 여기에는 더 빠른 작동과 정확한 백분율 또는 정점 수로 감소 수준을  지정할 수 있는 기능이 포함됩니다.
MultiRes modifier에 대한 자세한 내용은 여기를 참조하십시오.

1.6.3 –  ProOptimizer Modifier
ProOptimizer Modifier를 사용하면 오브젝트를 선택하고 대화식으로 최적화할 수 있습니다.
ProOptimizer modifier에 대한 자세한 내용은 여기를 참조하십시오.

1.6.4  – Batch ProOptimizer
ProOptimizer 기능은 오브젝트의 모양을 유지하면서 오브젝트의 정점 수와 면 수를 줄이는 데 도움이 되는 최적화 도구입니다. 이 옵션을 사용하면 최적화된 모델에서 재질, 매핑 및 정점 색상 정보를 유지할 수 있습니다.
Batch ProOptimizer 유틸리티에 대한 자세한 내용은 여기를 참조하십시오.

1.7 모델 +  셰이더 대신 텍스처가 있는 미리 렌더링 된 평면을 사용하십시오.

때로는 카메라 뷰 외부에 씬을 위한 환경을 만들어야 하지만 반사되어 나타나거나 그림자를 드리우거나 간접 조명(GI)으로 조명하여 씬에 영향을  미칩니다.    

그럴 경우 이러한 환경을 조성하는 모델은 단순하게 유지하거나 텍스처가 추가된 평면으로 교체하고, 필요하다면 불투명도 맵으로 잘라냅니다.    

카메라에서 더 멀리 떨어져 있지만 너무 길게 렌더링 되거나 유리 같은 재질을 통해 볼 수 있는 오브젝트(예: 가게 선반에 있는 여러 줄의 광택이 있는  병)에도 이 방법을 사용할 수 있습니다.    

이 방법은 반사되어 보이는 많은 양의 잎을 만들거나 현장에 그림자를 드리우고자 할 때 특히 효율적입니다.

불투명도 맵이 너무 길게 렌더링 되는 경우 텍스처링 가이드(파트 2)를 참조하여 더 빠르게 렌더링하도록 설정하는 방법을 알아보십시오.

예시 1
인스턴스화된 모델과 opacity 맵을 사용한 사전 렌더링 평면으로 생성된 환경을 반영한 모델 렌더링 비교입니다.

3ds Max에서 씬을 최적화하는 방법

예시 2
멀리 있는 오브젝트를 모델로 렌더링하는 것과 opacity 맵을 사용한 사전 렌더링 된 평면을 비교하는 것입니다.

3ds Max에서 씬을 최적화하는 방법

예시 3
굴절 및 흐릿한 반사가 있는 여러 오브젝트의 렌더링을 모델로 렌더링한 것과 opacity map을 사용한 사전 렌더링 된 평면을 비교한 것입니다.

3ds Max에서 씬을 최적화하는 방법

1.8 모델을 접어야 하는 경우

아래에 나열된 방법을 사용하면 하드 드라이브의 씬 크기를 줄일 수 있으므로 프로젝트가 3ds Max로 더 빨리 업로드 되고 열립니다. 이는 네트워크나 렌더팜을 통한 렌더링의 경우 중요합니다.

  • 최적화된 modifiers가 적용된 모델은 렌더링하기 전에 축소해야 합니다. 그러면 RAM 사용량, 렌더링 시간 및 하드 드라이브의 씬 크기가 줄어듭니다.
  • Meshsmooth 및 Turbosmooth modifier – modifier를 적용하여 모델을 편집 가능한 폴리 또는 편집 가능한 메쉬로 축소하지 않고  단순하게 유지할 수 있습니다. 메쉬의 밀도가 너무 높고 모델이 더 단순한 형태로 하드 드라이브에 저장되므로 씬의 무게가 덜 나갈 수 있습니다.

예시 1
Meshsmooth modifier가 적용된 모델을 렌더링할 때와 스택을 편집 가능한 폴리로 축소한 후 모델을 렌더링할 때의 리소스 사용량을 비교합니다. 모델이 인스턴스로 복사됩니다.

3ds Max에서 씬을 최적화하는 방법

편집 가능한 splines : 편집 가능한 스플라인 옵션의 선반(Lathe), Sweep 또는 "렌더링" 옵션과 같은 표현식을  사용하여 고밀도 3D 모델을 작성할 수 있습니다. 모델에 비해 작은 데이터가 편집 가능한 폴리로 축소되어 프로젝트에 저장됩니다.

예시 2
3D 옵션/modifier(Lathe 및 Sweep)가 적용된 편집 가능한 스플라인과 편집 가능한 폴리로 변환한 후의 리소스 활용률 비교입니다.

3ds Max에서 씬을 최적화하는 방법

요약

지오메트리 최적화의 규칙은 간단합니다. 적을수록 좋습니다.    

  • Viewport의 통계 정보와 "이름으로 선택" 창의 "Faces" 열을 통해 최적화할 지오메트리를 찾을 수 있습니다. 일반적으로 대부분의 씬 모델은 최적화하는 데 시간을 투자할 만큼 무겁지 않습니다. 가장 무거운 것을 찾고 폴리 카운트를 줄이는 것이 그 일을 할 것입니다.
  • 인스턴스를 사용하는 것은 씬의 폴리 카운트를 빠르게 줄이는 가장 효율적이고 쉬운 방법 중 하나입니다. Vray 또는 Mental Ray와 같은 일부 렌더 엔진에는 "instance" 옵션과 결합하여 씬을 더욱 최적화할 수 있는 도구(mr Proxy, VrayProxy)가 구현되어 있습니다. 이 튜토리얼의 다음 부분에서 그것들을 다룰 예정입니다.
  • 최적화 modifier를 사용하는 것은 처음에는 시간이 많이 걸릴 수 있지만 시간이 지나면 적합한 설정을 찾을 수 있습니다. 건축 시각화와 같은  반복적인 종류의 프로젝트를 수행한다면 최적화된 모델의 라이브러리를 직접 작성할 수 있습니다.
  • 미리 렌더링 된 텍스처를 가진 평면은 렌더링 시간과 리소스 수요를 줄일 수 있는 좋은 방법입니다. 카메라와 멀리 떨어져 있는 반사나 오브젝트에 가장 잘 작동하기 때문에 카메라 위치와 상관없이 비슷한 각도에서 볼 수 있습니다. 스틸을 만들고 렌더링하는 데 필요한 시간이 크게 필요하지 않을 수  있지만 많은 프레임으로 애니메이션을 렌더링하면 평면이 크게 달라질 수 있습니다.
  • 편집 가능한 스플라인은 특히 건축 시각화에 대해 작업할 때 씬 크기에 영향을 미치지 않는 대형 지오메트리를 작성하는 데 도움이 되는 3ds Max 도구입니다. 그들의 디테일 수준은 주어진 필요에 따라 수정될 수도 있습니다.

저는 먼저  위의 모든 기술을 테스트하여 렌더링에 어떤 영향을 미치는지 확인하고 더 나은 사용법을 익힐 것을 강력히 권고합니다. 그런 다음 일반 워크플로우에 통합해 보십시오. 이러한 단계를 적용하면 많은 시간, 번거로움, 그리고 장기적으로 비용을 절약할 수 있습니다.

이상으로 지오메트리에 대한 첫 번째 부분을 마칩니다. 다음 튜토리얼에서는 3ds Max 텍스처링 최적화에 대해 다루니 꼭 확인하시기 바랍니다!

저자 소개

이 글은 가라지팜 팀의 일원인 Michał Moś (일명 Andrew)가 작성하였고 가라지팜 에디토리얼 팀의 도움으로 편집되었습니다. 이 글에 사용된 대부분의  지식과 정보는 거의 10년 동안 렌더 팜을 운영한 광범위한 경험을 바탕으로 작성되었습니다.

가라지팜 팀의 일원인 Michał Moś (일명 Andrew)는 애니메이션 및 문제 해결에서 기술 문서 작성에 이르는 3D 렌더링 주제 전문가 입니다. 그는 CG 아티스트, 디자이너, 그리고 강사로 수많은 디자인 및 건축 회사에서 일했습니다. 3ds Max, C4D, V-Ray 및  Octane를 즐겨 사용하는 그는 그림 그리기, 창작 글짓기, 탁상용 RPG 게임을 좋아합니다.

https://michalmos.carbonmade.com

https://garagefarm.net/ko/home

테스트에 사용된 모델은 Marek Rybacki와 Evermotion의 모델입니다.
튜토리얼에 사용된 Autodesk Knowledge Network에 대한 링크:

관련 포스트

live chat