블렌더 Noise Threshold 값별 렌더 시간과 노이즈 실측
Noise Threshold를 0.1에서 0.005로 낮추면 렌더 시간은 얼마나 늘고 노이즈는 얼마나 줄어드는가? 같은 씬을 Blender 5.0 Cycles CPU에서 세 번씩 렌더해 시간 중앙값과 기준 이미지 대비 오차를 비교했습니다. 다른 씬에도 그대로 맞는 정답값을 찾기보다, 값이 바뀌는 방향과 멈추는 지점을 확인하는 시험입니다.
Noise Threshold는 픽셀별 샘플링을 멈출 기준입니다
Render Properties의 Sampling에서 Noise Threshold를 켜면 Cycles의 적응형 샘플링(Adaptive Sampling)이 작동합니다. Cycles는 픽셀마다 추정한 노이즈가 기준 아래로 내려왔다고 판단하면 그 픽셀의 샘플을 더 쌓지 않습니다. 임계값을 낮출수록 더 엄격하게 판단하므로, 매뉴얼은 보통 0.1부터 0.001 사이를 예로 들며 낮은 값은 더 좋은 품질과 더 긴 시간을 뜻한다고 설명합니다.
다만 Noise Threshold는 최종 품질을 보증하는 점수가 아닙니다. Render (Max) Samples가 상한이고, 픽셀별 Min Samples를 0으로 두면 Cycles가 임계값에 따라 최소 샘플 수도 자동으로 정합니다. 숫자 0을 입력하는 것은 적응형 샘플링을 끄는 것과 다릅니다. 숫자 0은 전체 샘플 수를 바탕으로 임계값을 자동 추정합니다.
같은 Cycles 씬에서 값만 바꿔 세 번씩 렌더했습니다
Blender 5.0.0, Cycles CPU, Ryzen 7 5800X3D, Windows 빌드 26200에서 시험했습니다. 256×192 픽셀의 절차적 정물 씬에 빨간 확산 구, 금속 구, 파란 유광 구, 유리 구, 베벨을 준 큐브와 범프가 있는 바닥을 놓았습니다. 카메라와 빛 세 개, 월드 설정은 모든 렌더에서 유지했습니다.
CPU는 8개 스레드로 고정했습니다. 모든 조건에서 seed 17, Max Samples 128, Min Samples 16, 디노이저 끔을 유지하고 Noise Threshold만 0.1·0.05·0.01·0.005로 바꿨습니다. 기준 행은 적응형 샘플링을 끄고 128 samples로 렌더했습니다. 각 조건을 세 번 반복하고 실행 순서를 회차마다 바꿔 중앙값과 범위를 적었습니다.
오차 비교 기준은 같은 씬을 적응형 샘플링 없이 1,024 samples로 렌더한 이미지입니다. RMSE는 저장된 8-bit sRGB PNG의 빨강·초록·파랑 코드값을 0~1로 정규화해 계산했습니다. 식은 √[모든 픽셀·채널 오차 제곱의 합 ÷ (가로×세로×3)]이며, 값이 작을수록 이 기준 이미지에 가깝습니다. 이 값은 선형광 오차나 절대적인 정답과의 차이를 뜻하지 않습니다.
| Noise Threshold | 적응형 샘플링 | 렌더 시간 중앙값 (3회 범위) | 기준 대비 RMSE (sRGB 0~1) |
|---|---|---|---|
| 0.1 | 켬 | 0.717초 (0.700~0.803) | 0.015589 |
| 0.05 | 켬 | 0.978초 (0.971~1.012) | 0.012478 |
| 0.01 | 켬 | 2.810초 (2.715~2.945) | 0.007840 |
| 0.005 | 켬 | 2.989초 (2.876~3.068) | 0.007810 |
| 체크 해제 | 끔 | 2.893초 (2.887~3.043) | 0.007809 |
시간은 Blender 시작과 씬 구성 시간을 제외하고 렌더 호출을 감싼 wall-clock 값입니다. PNG 저장 시간은 포함됩니다. 표의 범위는 세 번 측정한 최솟값과 최댓값이며, 비교 이미지의 픽셀값은 같은 설정을 반복 렌더해도 일치했습니다.

렌더 이미지를 골라 시간과 기준 오차를 살펴보세요
아래에서 설정을 선택하면 해당 조건의 실제 렌더 이미지와 시간·RMSE가 표시됩니다. 그래프의 가로축은 시간, 세로축은 기준 이미지와의 오차입니다. 왼쪽 아래에 가까울수록 이번 기준에 더 빠르고 가깝게 나온 결과입니다.

점이 왼쪽 아래로 갈수록 시간이 짧고 기준 이미지에 가깝습니다.
공통 조건: 256×192, seed 17, Max Samples 128, Min Samples 16, 디노이저 끔, CPU 8 threads.
이 시험에서는 0.1이 0.01보다 빨랐지만 오차도 컸습니다
이번 CPU 씬에서 0.1은 0.01보다 거의 네 배 빨랐고, 기준 이미지 대비 RMSE는 약 두 배였습니다. 0.1은 0.717초에 RMSE 0.015589, 0.01은 2.810초에 RMSE 0.007840이었습니다. 값을 낮추면서 더 오래 렌더해 기준 이미지에 가까워졌습니다.
하지만 0.005는 0.01보다 0.180초 오래 걸렸고 RMSE 차이는 0.000030뿐이었습니다. 적응형 샘플링을 끈 결과와 비교해도 0.005의 시간은 약 3% 길고, RMSE 차이는 0.000001이었습니다. 이 결과만으로 모든 장면에서 0.005가 손해라고 말할 수는 없지만, 낮은 숫자만 고집할 이유도 보여 주지 않습니다.
이 시험은 Max Samples를 128로 제한했습니다. 낮은 임계값을 선택해도 더 많은 샘플을 추가할 수 없는 조건에서는 오차 차이가 작아질 수 있습니다. 픽셀별 실제 샘플 수는 기록하지 않았으므로, RMSE만으로 Cycles가 몇 샘플에서 멈췄는지 계산하지 마세요.
내 장면에서는 최종 설정으로 작은 영역부터 비교하세요
- 최종 해상도에서 노이즈가 잘 보이는 그림자, 반사 재질, 간접광 영역을 고르세요.
- 카메라와 재질, 빛, seed, Max Samples를 고정하세요. 이번 표와 맞춰 보려면 Min Samples도 16으로 두세요.
- 먼저 디노이저를 끄고 Noise Threshold만 바꾸세요. 0.1부터 낮춰 보며 같은 크롭에서 시간과 디테일을 함께 확인하세요.
- 조건마다 세 번 반복해 시간 중앙값을 비교하세요. 세 번의 시간이 크게 흔들리면 차이가 큰 영역만 다시 시험하세요.
- 최종 렌더에서 디노이저를 쓸 예정이면 샘플링 선택을 마친 뒤 디노이저를 켜고 머리카락·텍스처·하이라이트를 별도로 검사하세요.
렌더에서 생긴 샘플링 노이즈와 실사 플레이트의 촬영 그레인은 다른 문제입니다. 합성 장면에서 깨끗한 CG와 플레이트의 질감을 맞춰야 한다면 CG와 실사 플레이트의 그레인 맞추기를 이어서 확인하세요.
Noise Threshold는 숫자 하나로 고르는 정답이 아니라, 내 장면에서 시간과 오차를 함께 비교할 기준입니다.
vfx 잡학지식

댓글 0
첫 댓글을 남겨보세요.