제작기

방 하나 = 객체 하나로 만든 3D 살롱

rooms.ts에 객체를 하나 추가하면 새 전시실이 생기도록 만든 과정과, 방을 버릴 때 반드시 해야 하는 정리.

살롱의 방은 전부 src/data/rooms.ts의 객체 하나에서 만들어집니다. 벽지 색, 바닥 무늬, 조명, 걸린 액자, 문의 위치까지 전부 데이터입니다. 새 방이 필요하면 배열에 객체를 하나 더 넣습니다.

(본문 작성 중. 아래는 목차 수준의 메모입니다.)

왜 데이터로 뺐나

  • 방을 늘릴 때마다 코드를 고치면 결국 방마다 다른 버그가 생긴다
  • 타입을 붙여 두면 필드를 빠뜨렸을 때 화면이 아니라 컴파일에서 걸린다

버릴 때가 더 중요하다

방을 바꿀 때 이전 방의 지오메트리·머티리얼·텍스처를 직접 해제하지 않으면 GPU 메모리에 그대로 남습니다. 문을 몇 번만 왕복해도 눈에 띄게 무거워집니다.

다음에 쓸 것

  • 액자에 실제 이미지 넣기
  • 방마다 다른 바닥 재질
  • #three.js
  • #next.js
  • #제작기
광고 자리