12 · Noise·Sin·Cos 물결과 왜곡
2주 차 / 원문 Day 12 · 문서·예제 제공 · 고정된 하루 분량이 아닌 학습 순서입니다.
목표
주기 함수와 noise의 차이를 설명하고 한 변수씩 파동을 실험한다.
선수 지식
10~11, sin/cos와 geometry 정점.
핵심 개념과 설명
z에 Asin(kx+t*speed)를 더하면 진폭 A, 공간 주파수 k, 시간 속도 speed를 구분할 수 있습니다. cos는 위상 관계가 다른 같은 주기 계열이며, noise는 규칙적 반복을 줄이는 데 사용됩니다.
noise와 프레임마다 새 난수를 만드는 것은 다릅니다. 공간적으로 연속된 noise를 원하면 검증된 구현과 라이선스를 확인해야 하며 GLSL 내장 noise를 모든 환경에서 기대하지 않습니다. vertex 분할 수가 부족하면 fragment 색이 부드러워도 실루엣은 각집니다.
학습 후 얻을 역량
- 주기 함수와 noise의 차이를 설명하고 한 변수씩 파동을 실험한다.
- 아래 완료 조건을 재현하고 자가 점검 질문에 자신의 말로 답할 수 있습니다.
실습 과제
- 평면 정점에 사인파를 적용하고 진폭만 바꿉니다.
- 주파수를 고정해 분할 수 4,16,64를 비교합니다.
- sin과 cos의 위상을 비교한 뒤 noise로 대체할 경우의 기대와 필요한 구현·출처를 기록합니다.
관찰할 변수
진폭, 주파수, 속도, 분할 수, 위상. 하나씩 변경합니다.
완료 조건
- 공간 주파수와 시간 속도를 구분한다.
- 분할 수 세 조건을 비교했다.
- noise와 난수의 차이를 설명했다.
자가 점검 질문
- fragment shader만으로 실루엣이 물결칠까요?
- GPU 변형이 CPU raycast에도 자동 적용될까요?
공식 참고
실험 기록 — 직접 작성
목표
핵심 개념
바꾼 변수와 예상
실제 결과
배운 점
남은 질문
이전: UV와 Texture Sampling · 다음: ShaderMaterial 통합
연결된 예제와 실행 범위
원본 실행 코드 · 화면 단위 ID: 12-waves
연결된 원본 코드를 Monaco에서 편집하면 검사 후 sandbox 미리보기에 반영됩니다. 확장 과제와 완료 조건은 직접 수행하고 결과를 기록하세요.
기존에 저장한 코드가 있으면 그대로 유지합니다. 새 원본을 사용하려면 먼저 전체 JSON으로 백업한 뒤 원본 코드로를 선택하세요. 필기는 지워지지 않습니다.