방 하나 = 객체 하나로 만든 3D 살롱
rooms.ts에 객체를 하나 추가하면 새 전시실이 생기도록 만든 과정과, 방을 버릴 때 반드시 해야 하는 정리.
살롱의 방은 전부 src/data/rooms.ts의 객체 하나에서 만들어집니다. 벽지 색, 바닥 무늬, 조명, 걸린 액자,
문의 위치까지 전부 데이터입니다. 새 방이 필요하면 배열에 객체를 하나 더 넣습니다.
(본문 작성 중. 아래는 목차 수준의 메모입니다.)
왜 데이터로 뺐나
- 방을 늘릴 때마다 코드를 고치면 결국 방마다 다른 버그가 생긴다
- 타입을 붙여 두면 필드를 빠뜨렸을 때 화면이 아니라 컴파일에서 걸린다
버릴 때가 더 중요하다
방을 바꿀 때 이전 방의 지오메트리·머티리얼·텍스처를 직접 해제하지 않으면 GPU 메모리에 그대로 남습니다. 문을 몇 번만 왕복해도 눈에 띄게 무거워집니다.
다음에 쓸 것
- 액자에 실제 이미지 넣기
- 방마다 다른 바닥 재질
- #three.js
- #next.js
- #제작기