05 · Light·Shadow·Texture
1주 차 / 원문 Day 5 · 문서 제공 / 실행 예제 제공 · 고정된 하루 분량이 아닌 학습 순서입니다.
목표
빛·그림자·텍스처가 화면에 기여하는 경로를 구분한다.
선수 지식
03~04, material과 UV의 존재.
핵심 개념과 설명
광원은 표면의 방향과 재질에 따라 밝기를 바꿉니다. 그림자는 광원에서 본 깊이 정보를 사용하는 추가 과정이며 castShadow/receiveShadow와 renderer의 shadow 설정을 함께 확인해야 합니다.
Texture는 UV로 표면에 대응되는 데이터입니다. 색상 이미지와 normal/roughness 같은 비색상 데이터는 의미가 다르므로 color space 설정을 구분합니다. 이번 과제는 직접 만든 작은 체크무늬로 충분하며 큰 외부 에셋을 수집하지 않습니다.
학습 후 얻을 역량
- 빛·그림자·텍스처가 화면에 기여하는 경로를 구분한다.
- 아래 완료 조건을 재현하고 자가 점검 질문에 자신의 말로 답할 수 있습니다.
실습 과제
- 평면과 큐브를 놓고 DirectionalLight 위치만 바꿉니다.
- 그림자를 켜는 설정을 각각 확인하고 그림자가 끊기거나 계단져 보이는 위치를 관찰합니다.
- 작은 로컬 체크무늬 텍스처를 추가하고 광원 변화와 무늬 변화의 차이를 기록합니다.
이 단위의 실행 코드를 학습 화면에서 편집할 수 있습니다. 기존 빈 코드 기록이 있다면 원본 코드를 복원하세요. 필기는 유지됩니다.
관찰할 변수
light 위치/강도, shadow map 크기·bias, texture/roughness. 하나씩 비교합니다.
완료 조건
- 빛과 그림자 설정의 역할을 설명했다.
- 같은 재질에서 조명 변경을 기록했다.
- 텍스처 출처와 color space 선택을 적었다.
자가 점검 질문
- 밝은 물체가 항상 그림자를 만들까요?
- normal map을 색상 이미지처럼 처리하면 왜 문제가 될까요?
공식 참고
실험 기록 — 직접 작성
목표
핵심 개념
바꾼 변수와 예상
실제 결과
배운 점
남은 질문
이전: 좌표계·Vector3·Matrix4 · 다음: Raycaster·OrbitControls
연결된 예제
예제 원본은 화면의 편집기에 표시되고 실제로 실행됩니다. 첫 주석의 변수나 과제를 하나씩 바꾸고 예상과 결과를 기록하세요. 원본 복원은 코드만 되돌리며 필기를 지우지 않습니다.
실행 환경과 제한을 확인하세요.
연결된 예제와 실행 범위
원본 실행 코드 · 화면 단위 ID: 05-light
연결된 원본 코드를 Monaco에서 편집하면 검사 후 sandbox 미리보기에 반영됩니다. 확장 과제와 완료 조건은 직접 수행하고 결과를 기록하세요.
기존에 저장한 코드가 있으면 그대로 유지합니다. 새 원본을 사용하려면 먼저 전체 JSON으로 백업한 뒤 원본 코드로를 선택하세요. 필기는 지워지지 않습니다.