본문으로 건너뛰기

렌더러를 정답에 대어 재기

BWS5분 읽기BYTHECLOUD ENT

그림이 어떻게 보이는지 판단하기 전에, 답이 식으로 알려진 장면에서 빛이 맞는지부터 확인합니다.

요약

경로 추적 렌더러는 그럴듯해 보이면서도 빛 에너지를 잃거나 지어낼 수 있습니다. 실제 제품 렌더러를 답이 정확히 알려진 장면 — 표면과 매질의 화이트 퍼니스, 해에서 오는 단일 산란 — 에 돌려 모든 결과를 식의 값과 통계 오차에 견줍니다. 검사 13개 중 13개가 묶음의 허용치 안에 들고, 정답에서 가장 먼 것은 확산 구의 1.0096입니다. 이어서 같은 렌더러로 구름을 그려, 정답 대신 수렴한 기준 렌더와 비교하고 GPU 렌더가 그 기준에 어떻게 다가가는지 적습니다.

핵심 결과

  1. 1전방·등방·후방 산란 볼륨과 확산 표면을 포함한 식 검사 13개 중 13개가 묶음의 허용치 안에 듭니다.
  2. 2추정 방식을 바꾼 뒤 구름을 지나는 그림자 투과율 오차가 0.00427에서 0.00116로 줄었습니다.
  3. 3픽셀당 1,024 샘플에서 GPU 구름이 수렴 렌더 대비 42.4 dB에 이르고, 에너지는 보존됩니다.

1왜 정답에서 시작하나

부드러운 빛은 실수를 가립니다. 튕길 때마다 에너지를 조금씩 잃는 렌더러는 결함이 아니라 분위기처럼 보이는 그림을 만들고, 조금 어두운 구름은 스타일로 읽힙니다. 다른 렌더러와 비교하면 두 프로그램이 서로 같다는 것만 알 수 있습니다. 그래서 첫 검사는 수학과의 비교입니다. 올바른 밝기를 식으로 쓸 수 있는 장면들입니다.

도식 1검사 한 건의 진행
  1. 01

    풀 수 있는 장면 고르기

    밝기를 식으로 구할 수 있는 퍼니스나 단일 산란 장면.

  2. 02

    실제로 렌더하기

    고객 작업에 쓰는 것과 같은 코드 경로의 제품 렌더러.

  3. 03

    오차 추정하기

    독립 패스로 측정값마다 표준오차를 구합니다.

  4. 04

    비교하고 기록하기

    결과·정답·허용치를 함께 저장해, 후퇴가 생기면 실패한 행으로 드러납니다.

2들어간 빛, 나온 빛

화이트 퍼니스에서는 모든 표면과 입자가 받은 빛을 전부 흩뜨리고, 주변은 고르게 밝습니다. 형태가 무엇이든 카메라는 들어온 밝기를 정확히 그대로 보아야 합니다. 어두워지면 렌더러가 에너지를 잃은 것이고, 밝아지면 지어낸 것입니다.

그림 1화이트 퍼니스 밝기와 정답
  • 측정값
  • ± 표준오차 2배
  • 정답
균질 볼륨, g = 0.9
0.9993 ± 0.0040
메타볼 볼륨, g = 0.9
1.0018 ± 0.0030
메타볼 볼륨, g = 0
1.0000 ± 0.0036
메타볼 볼륨, g = −0.5
0.9969 ± 0.0036
구름 볼륨, 이중 로브 (0.85 / −0.3)
0.9985 ± 0.0024
확산 구, 반사율 1
1.0096 ± 0.0030

축이 0에서 시작하지 않습니다

점은 들어온 빛 대비 렌더된 밝기이고, 가로선은 표준오차의 두 배 범위입니다. 모든 경우의 정답은 들어온 빛 그대로입니다.

출처: 화이트 퍼니스 검사 · 측정 2026년 9월 30일

표로 보기
측정값표준오차정답
균질 볼륨, g = 0.90.99930.00201.0000
메타볼 볼륨, g = 0.91.00180.00151.0000
메타볼 볼륨, g = 01.00000.00181.0000
메타볼 볼륨, g = −0.50.99690.00181.0000
구름 볼륨, 이중 로브 (0.85 / −0.3)0.99850.00121.0000
확산 구, 반사율 11.00960.00151.0000

다섯 볼륨 경우는 강한 전방·후방 산란까지 모두 오차 범위 안에서 정답 위에 놓입니다. 정답에서 가장 먼 것은 확산 구의 1.0096로, 묶음의 허용치 안이지만 표면 코드가 바뀔 때 가장 먼저 보는 경우입니다.

3해에서 오는 단일 산란

해가 매질 뒤에 있으면 카메라로 한 번 흩어진 빛은 위상 함수의 전방 로브를 따르고, 해가 카메라 뒤에 있으면 후방 로브만 기여합니다. 두 경우 모두 정확한 적분값이 있습니다. 표는 세 위상 설정에서 둘을 비교해, 한쪽 로브의 오류가 다른 쪽 뒤에 숨지 못하게 합니다.

표 1단일 산란 밝기와 정확한 적분값

경우정답렌더상대 오차 (%)
전방, 매질 뒤의 해, g = 0.80.969270.97173+0.25
후방, 카메라 뒤의 해, g = 0.80.002410.00241−0.13
전방, 매질 뒤의 해, g = 00.021540.02159+0.25
후방, 카메라 뒤의 해, g = 00.039060.03901−0.13
전방, 매질 뒤의 해, g = −0.40.006590.00661+0.25
후방, 카메라 뒤의 해, g = −0.40.151900.15170−0.13

상대 오차는 렌더 값에서 정답을 뺀 뒤 정답으로 나눈 값입니다.

출처: 단일 산란 검사 · 측정 2026년 9월 30일

방향마다 위상 설정이 달라도 같은 오차가 되풀이되므로, 이 오차는 위상 함수에서 오지 않습니다.

4구름을 지나는 그림자

구름의 그림자는 빛이 구름을 지나며 얼마나 살아남는지에 달려 있습니다. 구름 여러 지점에서 렌더러의 투과율을 촘촘한 수치 적분과 비교합니다. 추정 방식을 바꾸자 평균 절대 오차가 몇 배 줄었습니다.

0.00427

평균 절대 오차, 변경 전

0.00116

평균 절대 오차, 변경 후

출처: 구름 그림자 투과율 · 측정 2026년 9월 30일

5구름에 필요한 튕김 수

정답은 단순한 매질에서 멈춥니다. 낮은 해 아래의 적운 전체는, 더 바뀌지 않을 때까지 튕김 한도를 올린 기준 렌더와 에너지를 비교합니다. 단일 산란만으로는 빛의 20%만 전달되고, 튕김 64번에서 94%에 이릅니다. 구름이 밝게 보이는 것은 빛이 안에서 여러 번 튕기기 때문이고, 일찍 멈추는 렌더러는 구름을 회색으로 그립니다.

그림 2볼륨 튕김 한도별 구름 에너지
0255075100%
100%
0141664512

볼륨 튕김 한도

수렴 기준 대비 에너지. 튕김 한도는 시험한 값의 순서대로 놓았고, 간격은 비례가 아닙니다.

출처: 적운 구름의 다중 산란 · 측정 2026년 9월 30일

표로 보기
볼륨 튕김 한도에너지
020%
127%
443%
1672%
6494%
512100%

6GPU에서의 수렴

제품 렌더에서는 같은 빛 전달 계산이 GPU에서 돌아갑니다. 같은 장면의 수렴 기준과 비교하면 편향 없는 추정답게 픽셀당 샘플 수에 따라 신호 대 잡음비가 오르고, 에너지는 그대로 보존됩니다. 옆 조명 장면은 같은 샘플 수에서 38.2 dB에 이릅니다.

그림 3수렴 렌더 대비 최대 신호 대 잡음비
  • 역광
  • 옆 조명
30354045 dB
42.4 dB38.2 dB
2565121,024

픽셀당 샘플 수

축이 0에서 시작하지 않습니다

같은 적운의 두 조명 장면, GPU 렌더. 높을수록 수렴 그림에 가깝습니다.

출처: GPU 구름과 수렴 렌더 · 측정 2026년 9월 30일

표로 보기
픽셀당 샘플 수역광옆 조명
25636.4 dB31.7 dB
1,02442.4 dB38.2 dB

데이터 출처

데이터측정일
렌더러 정확도 묶음, 요약2026년 9월 30일
화이트 퍼니스 검사2026년 9월 30일
단일 산란 검사2026년 9월 30일
구름 그림자 투과율2026년 9월 30일
적운 구름의 다중 산란2026년 9월 30일
GPU 구름과 수렴 렌더2026년 9월 30일

BWS로 발행

더 보기 — 연구

  1. StorMStorM Web Engine — 처음 불러오는 코드 용량사이트에 실제로 배포되는 StorM Web Engine이 처음 불러오는 코드의 압축 용량과, 지키기로 한 용량 상한을 정리했습니다.
  2. StorM사람을 위한 연구, 사람을 대신하지 않는 연구우리 연구에서 상생이 무엇을 뜻하는지, 그리고 지금 어디서 볼 수 있는지 정리했습니다.