펄린 노이즈 계산기
켄 펄린의 개선된 노이즈(Improved Noise, 2002) 알고리즘으로 좌표마다 결정적인 그래디언트 노이즈 값을 계산합니다. 좌표 하나의 보간 과정을 단계별로 보여주고, 옥타브를 겹친 노이즈 필드를 격자로 시각화합니다.
노이즈(3.5, 1.2)
0.329728
격자 칸 (3, 1) 안, 칸 안 위치 (0.5, 0.2)
사용 방법
- 1"점 계산" 모드에 좌표 x, y를 넣어 그 점의 노이즈 값과 보간 과정을 봅니다.
- 2정수 좌표(예: 3, 7)를 넣어 값이 항상 정확히 0이 되는지 확인해 봅니다.
- 3"필드 보기" 모드에서 스케일과 옥타브 수를 바꿔 가며 지형처럼 보이는 무늬가 어떻게 달라지는지 봅니다.
- 4옥타브를 1로 두면 부드러운 구름 무늬, 여러 개로 늘리면 산맥처럼 거친 무늬가 되는 것을 비교합니다.
자주 묻는 질문
좌표마다 매끄럽게 이어지는 유사난수 값을 만드는 방법입니다. 켄 펄린이 1983년 영화 «트론»의 절차적 텍스처를 위해 만들었고, 2002년에 «개선된 노이즈»로 다듬은 버전이 지금도 표준으로 쓰입니다. 이 계산기는 그 2002년 버전(fade 곡선 6t⁵-15t⁴+10t³)을 그대로 구현했습니다.
정수 좌표는 노이즈가 정의된 격자의 꼭짓점 자신이기 때문입니다. 그 점에서 자기 자신까지의 변위가 (0,0)이라 그래디언트가 무엇이든 내적이 0이 되고, fade 곡선의 성질(fade(0)=0, fade(1)=1) 때문에 보간도 그 값을 그대로 통과시킵니다. 그래서 순열표 내용과 무관하게 언제나 0입니다 — 구현이 맞았는지 바로 확인할 수 있는 성질입니다.
일반 난수는 이웃한 값끼리 아무 관계가 없어 지형이나 구름처럼 매끄럽게 변하는 것을 흉내 낼 수 없습니다. 펄린 노이즈는 이웃 좌표의 값이 서로 가까워 자연스럽게 이어지면서도, 같은 좌표에 같은 시드로는 항상 같은 값을 내는(결정적인) 유사난수입니다.
주파수를 올리고 진폭을 낮춘 노이즈를 여러 겹 더하는 기법입니다(fractal Brownian motion). 옥타브 1개는 부드러운 큰 무늬만 있지만, 옥타브를 늘릴수록 큰 무늬 위에 작고 세밀한 굴곡이 겹쳐져 산맥이나 구름처럼 거친 질감이 생깁니다.
이론상 -2에서 2 사이지만(네 꼭짓점 기여값의 볼록결합이라 각 기여값의 절댓값 합을 못 넘습니다), 이 계산기가 쓰는 그래디언트 표에서 실제로 나오는 값은 대체로 -1에서 1 사이입니다.
켄 펄린이 «개선된 노이즈» 참조 구현(ImprovedNoise.java)에서 공개한 256개 표 그대로입니다. 이 표를 쓰면 다른 구현으로 계산해도 같은 좌표에서 같은 값이 나옵니다.
전송되지 않습니다. 모든 계산은 브라우저 안에서 이뤄지고, 입력값은 이 기기에만 남습니다.
알아두면 좋은 점
- 2차원(z=0으로 고정한 3차원 알고리즘)만 지원합니다.
- "필드 보기"는 격자 최대 200×150칸, 옥타브 최대 8개까지만 지원합니다.
- 색은 그 칸의 노이즈 값을 최소~최댓값 구간에서 상대적으로 나눠 칠한 것으로, 절대적인 밝기 기준이 아닙니다.
함께 보면 좋은 도구
마지막 검증: 2026년 9월 3일 · 결과는 참고용 추정치입니다.