작동하는 방으로 시작하세요

각 다운로드는 2026년 9월 5일에 업데이트된 완전한 Room v5 ZIP입니다. 호환되는 Locus 빌드와 함께 가져오거나, 완성된 USDZ 옆에 있는 자료와 공개 메타데이터를 검토하기 위해 패키지를 언패킹하세요.

Room v5 지원이 필요합니다. Early Locus 1.1.0 빌드(1~3)는 이러한 ZIP 파일을 지원하지 않습니다. Room v5는 Locus 1.1.0 빌드 4부터 지원되며, Locus 1.1.1도 포함됩니다. 설정 → 도움말 및 정보 → Locus에 있는 빌드를 확인하세요.
앱 내 1.1.5 또는 1.2.0 Rooms가 아닙니다. App Store의 Locus 1.1.5용 기본 통합 기능 및 라이브러리 수정을 통해 소파와 라운지 시트와 숨겨진 데스크 그룹이 추가되었습니다; Locus 1.2.0에서는 작성된 시트 그룹이 있는 Seats 선택기에서 관련 시트 그룹을 추가로 그룹화했습니다. 이러한 다운로드 가능한 ZIP 파일은 9월 5일 데스크-시트 패키지에 남아 있어 작성자는 라운지 시트, 숨겨진 데스크 또는 시트 그룹 없이 기본 Room v5 계약을 연구할 수 있습니다. 라운지 시트와 숨겨진 데스크에 대해서는 다음을 참조하십시오. 형식 참조; 좌석 그룹의 경우, 참조하십시오 좌석 그룹 참조.

이전 빌드를 사용하고 있습니까? 이전 호환 버전 다운로드: 아티움 로프트, 현관 갤러리, 호라이즌 아틀리에.

Locus이 작성한 부품은 CC BY 4.0에서 재사용할 수 있습니다; 내장된 Poly Haven 텍스처는 CC0으로 유지됩니다. 참조하십시오 크레딧 및 라이선스 세부 사항.

배송 계약을 선택하세요

Complete Package v2는 Locus 1.2.1 이상에서 공식적으로 기능이 완벽한 임포트 형식입니다. 그 ZIP 루트는 직접 포함합니다. locusplace.json 그리고 catalog/, 그리고 방은 아래에 산다 catalog/spaces/<space-id>/. 안정적인 ID와 현장 업데이트, 사운드, 애니메이션, 비디오 표면, 좌석 그룹, 출처 및 지원되는 번들된 경험에 사용됩니다.

현재 공개 Room builder, scaffolder, packer, validator 및 내려받을 수 있는 Room 예제는 아래의 legacy/simple 평면 호환 형식을 계속 만듭니다. 완전한 Package v2를 작성하거나 검증하지 않습니다. 평면 형식을 가져올 때마다 새 UUID를 받습니다.

legacy/simple 전달 계약

정확히 다섯 개의 루트 파일이 포함된 평평한 호환성 ZIP을 제공하십시오:

my-room.zip
├── space.json
├── provenance.json
├── teleport-points.json
├── scene.usdz
└── thumbnail.jpg

수정 가능한 소스, 텍스처, 캐시 및 교환 파일을 ZIP 외부에 유지하십시오. 메타데이터에 참조된 모든 엔티티는 전달된 USDZ에 안정적이고 고유한 이름을 하나 가져야 합니다.

오픈 및 좌석

각 방은 정확히 하나를 선언합니다. viewOpenings 진입. 선택된 Locus 보기와 논리적으로 연결되어 있으며, USDZ을 자르지 않습니다. 모델 창과 원본 기하학의 기타 건축적 개방부. 좌표는 오른손형 미터법을 사용하며, +Y는 위로, -Z는 앞으로, 그리고 쿼터니온을 사용합니다. [x, y, z, w] 주문.

각 탈피트 포인트는 눈 위치와 방향을 정의합니다. anchorXZ 수출된 방 경계로 정규화됩니다; sourceFloorOffset 그 수준을 식별한다; eyeHeight 그 바닥에서 측정됩니다. 좌석 ID는 객실 인터페이스의 일부이므로 수정 사항에 따라 일관되게 유지해야 합니다.

사용용 작가, 미리보기용이 아닌. 실제로 전달할 것과 동일한 ZIP을 Apple Vision Pro에 가져오고 모든 좌석에 앉아 확인하세요. 구조적으로 유효한 룸이라도 눈높이가 불편하거나 시야가 가려지거나 크기가 잘못되거나 여유 공간이 부족할 수 있습니다.

옵션 공간 적응

spatialAdaptation USDZ의 의미 부분들을 Locus 기능과 연결합니다:

필드계약
wallEntities검증된 벽 참조; 이들은 가상 벽을 숨기지 않거나 방 포털을 실행하지 않습니다.
roofEntities유효한 지붕 또는 천장 참조; 이들은 가상 지붕을 숨기지 않습니다.
deskEntitiesByTeleportID좌석 ID를 테이블톱 표면의 정확한 엔터티에 매핑합니다. 이 지도에서 제외된 좌석은 1급 라운지 좌석(소파, 데이베드, 벤치)입니다: 작성된 바닥과 눈높이에만 로딩되며 데스크 측정, 정렬 또는 패스스루를 받지 않습니다 — 근처의 커피 테이블을 데스크처럼 매핑하지 마세요.
deskGroupEntitiesByTeleportID선택 사항, 1.1.5+. 이름, 이미 책상 뒷받침이 있는 좌석에 대해 deskEntitiesByTeleportID 입력, 전체 하위 구조가 해당 좌석의 숨겨진 책상인 유일한 엔티티이므로 Locus은 방문자에게 숨겨진 책상 제어를 제공할 수 있습니다. 명명된 엔티티는 고유하게 해제되어야 하며 책상 표면 엔티티의 조상이어야 합니다. 그렇지 않으면 방이 로드되지 않습니다. 이전 독자는 이 필드를 무시합니다.

맵핑된 책상 엔티티는 책상 자체 또는 꽉 조여진 슬래브여야 합니다. 의자, 램프, 다리, 컴퓨터 또는 느슨한 소품을 아래에 포함하지 마십시오; Locus은 엔티티의 경계를 사용하여 표면 높이, 발자국 크기 및 방향을 도출합니다.

옵션 조명 인터페이스

조명 메타데이터는 Locus에게 수출된 발광 메시지와 경계된 실행 시간 소스가 각 방문자 대시보드 컨트롤에 속하는지 알려줍니다. 이는 방을 모델링, 조명 처리 또는 베이킹하는 방법을 규정하지 않습니다.

필드Locus 동작
luminaireGroups한 그룹은 하나의 논리 스위치와 하나의 밝기/색상 제어 세트입니다.
entities발광 부착물 본체를 명명합니다. 활성화된 부착물은 모든 좌석에서 눈에 띄게 발광 상태로 유지됩니다.
proxy / proxies경계된 점 또는 지점 소스를 선언합니다. 사용하다 proxies Room v3에서 하나의 스위치가 여러 개의 물리적 에미터를 구동할 때.
nearTeleportIDs직접적인 프록시 소스를 선택한 좌석으로만 제한합니다; 다른 곳에서 피처 본체를 숨기거나 어둡게 하지 않습니다.
bakedIndirect.entities저주파 간접 조명은 방 조명 마스터와 전반적인 방 EV에 의해 제어되는 Room v3 수신기 서브트리를 사용합니다.

공유된 간접 레이어는 스케일링됩니다. 2^overallEV. 개별 조명 스위치, 온도, 색상 및 밝기는 로컬 컨트롤로 유지되며 공유된 반사광을 재색칠하지 않습니다. 유리, 물, 투과성 재료, 조명 글로우 메시지 및 식별 가능한 조명 특화 홀로스를 공유된 간접 수신기 서브트리에서 제외하십시오; 직접 프로시저는 로컬 광원 풀을 소유합니다.

Room v3는 최대 12개의 작성된 프록시, 모든 좌석에서 4개의 활성 프록시, 1개의 그림자 캐스팅 프록시, 프록시당 10,000루멘, 그리고 -4…+1 EV 범위의 밝기를 강제합니다. 이것들은 목표 값보다는 안전 제한입니다.

조명은 선택 사항입니다. 생략하다 lighting 방에 방문자 제어 설비가 없는 경우 Room v2를 사용하여 기본 조명 그룹을 사용하거나, Room v3를 사용하여 여러 프록시와 Room 소유의 베이킹 간접 조명을 사용합니다.

당신의 소재 디자인을 보존하세요

Locus은 수출된 USDZ에서 지원되는 PBR 재료, 텍스처, UV 및 변환을 사용합니다. 이름과 같은 glass, 가구 크기 및 수입된 방 식별자는 재료 미리 설정을 선택하지 않습니다. 편집 가능한 소스에서 올바른 재료와 내보내기 문제를 해결한 후 Room ZIP을 다시 빌드합니다.

Room v5는 명시적인 것을 추가합니다. rendering.softenedReflectionEntities 그리고 rendering.uiFadeEntities. 수평 장면 디테일이 제거된 보기 반사 기능을 원할 때만 첫 번째를 사용하십시오; 이는 방 내부를 반영하지 않습니다. 두 번째를 사용하여 방문객 창문을 차단하는 동안 선택된 가구를 부드럽게 흐리게 할 수 있습니다. 생략된 역할은 이러한 동작을 모두 제공하지 않습니다.

모든 v5 스포트라이트가 유닛을 선언한다 direction 예를 들어 수출된 방 좌표에서 [0.6, -0.8, 0]. 고정점 공급 위치만 제공합니다. 이러한 필드는 v5 호환 Locus 빌드가 필요합니다. 사용하십시오 옵션 USD 모델 감사 수출된 참조 및 지원되는 셰이더를 확인하려면 읽어보세요. 지원 자료, 기본값 및 마이그레이션 규칙 내보내기 전에.

실험적인 주변 애니메이션

Room v4는 USDZ에 이미 내장된 애니메이션 클립을 명명된 방문자 컨트롤에 연결할 수 있습니다. 각각 ambientAnimations 진입은 하나의 엔터티와 하나의 애니메이션을 식별하고, 초기 스위치, 속도 범위 및 재생 간격 범위도 식별합니다.

방의 모든 실험 애니메이션을 방문자는 방의 움직임 Quick Controls의 타일. 안에 설정 → 모션 → 방 그들은 각 애니메이션을 전환하고, 실험 속도와 간격을 변경한 후, 현재 장치에서 해당 값을 이 방에 저장할 수 있습니다. 간격은 0–0 즉시 반복; 다른 최소 및 최대 값은 완료된 재생마다 새로운 무작위 정지를 선택합니다.

애니메이션 지원은 실험적인 것입니다. 메타데이터, 재생 동작, 컨트롤, 속도 및 간격이 변경될 수 있습니다. 의도적으로 이러한 위험을 수락하지 않는 한 애니메이션 메타데이터는 생략하십시오. 이는 Room v5의 애니메이션에도 적용됩니다.

가장 작은 작동하는 방을 만드세요

그 최소한의 방 빌더 빈 Blender 장면에서 시작하여 책상 하나, 교정된 좌석 하나, 벽 두 개, 지붕 하나, 제어된 펜던트 하나를 생성합니다. macOS에서 Blender 5.2와 Python 3이 필요합니다. 빌더가 번들된 메타데이터 스캐폴더를 사용할 수 있도록 이 리포지토리를 복제하거나 다운로드하세요. 외부 모델, 텍스처 또는 MCP 연결이 필요하지 않습니다.

  1. 저장소 루트에서 빌더를 실행하고 이미 존재하지 않는 출력 경로를 사용하십시오. 이는 편집 가능한 Blender 파일, 자체 포함된 USDZ 파일, 썸네일 및 여섯 개의 좌석 리뷰 이미지를 저장합니다.
  2. 각 이미지를 검사하십시오 review/. 스케일, 좌석 방향, 간격 또는 테이블톱 사용성이 잘못된 경우 출처를 수정하십시오.
  3. 공개 패커와 검증기를 실행한 다음 정확한 ZIP을 통해 가져옵니다. 장소 → 가져오기 → 방 가져오기 → 파일.
  4. 선택 최소 독서실 Places에서 View와 함께 연결하고 가상 공간을 입력하세요. Reading Desk 좌석, Quick Controls의 방 조명 타일을 사용해 보세요, 그리고 조명 및 사진 → 방. 실제 테이블 정렬 및 편안함에는 Apple Vision Pro이 필요합니다.
blender --background --factory-startup --python-exit-code 1 \
  --python tools/build_minimal_room.py -- \
  --output /absolute/path/to/minimal-reading-room
python3 tools/pack_locus_asset.py \
  /absolute/path/to/minimal-reading-room/room \
  /absolute/path/to/minimal-reading-room.zip
python3 tools/validate_locus_asset.py /absolute/path/to/minimal-reading-room.zip

Blender 실행 파일의 절대 경로를 사용하는 경우 blender PATH에 없습니다. 빌더와 패커는 기존 출력을 덮어쓰기를 거부합니다. 편집 가능한 소스를 유지하고 다섯 파일 ZIP 외부에서 이미지를 검토하십시오. 그 완전한 실행 시간 상호작용 참조 좌석, 안전성, 충돌 기록, 측정된 품질, 데스크 매핑 및 저자 권한이 앱과 어떻게 연결되는지 설명합니다.

패키지, 검증한 다음 호환성 ZIP을 수입합니다.

다섯 개의 소스 파일을 하나의 디렉터리에 보관하고 macOS에서 공개 플랫 형식 도구를 실행합니다:

python3 tools/pack_locus_asset.py /absolute/path/to/room /absolute/path/to/my-room.zip
python3 tools/validate_locus_asset.py /absolute/path/to/my-room.zip
  1. USDZ 수출업체 및 공개 검증기에서 발생하는 모든 경고 또는 오류를 해결합니다.
  2. Locus에서 선택하십시오 룸 가져오기 그리고 정확하게 검증된 ZIP을 선택하십시오.
  3. Apple Vision Pro에서 방과 전망을 연결하고 들어가세요.
  4. 선언한 모든 좌석, 선택적인 데스크 매핑, 렌더링 역할 및 조명 제어를 시도해 보세요.
  5. 소스 코드를 수정하고 ZIP을 다시 빌드하십시오; 최종 아카이브를 직접 패치하지 마십시오.

AI 어시스턴트와 함께 빌드

공공 샘플 기술과 간략한 설명을 로컬 스크립트를 실행하고 이미지를 검사할 수 있는 AI 코딩 에이전트에 제공하세요. Blender가 설치되면 기본 경로가 Python을 사용하여 원본 방을 생성하고, 재료를 설정하며, 이미지를 렌더링하고 검토하고, 배경에서 모델을 내보냅니다. 그런 다음 좌석과 선택적인 조명을 연결하고, 호환성 형식에 대한 다섯 개의 배송 파일을 스캐폴드하며, 정확한 평면 ZIP을 검증할 수 있습니다. 원하시면 다른 전문 3D 워크플로우를 사용할 수도 있습니다.

Blender 창 또는 MCP 설정이 필요하지 않습니다. 에이전트는 스크립트와 렌더링을 저장하고, 이미지를 확인하며, 방을 수정합니다. 뷰포트를 조작하거나 각 모델링 단계를 관찰할 필요가 없습니다.

헤드리스 작문은 여전히 시각적 검토를 포함합니다. 저장된 렌더링은 에이전트가 모델링 및 재료 문제를 포착하는 데 도움이 됩니다; Apple Vision Pro의 최종 앱 확인은 Locus에서 Room이 어떻게 보이고 어떻게 느껴지는지 확인합니다. 에이전트가 적절한 3D 도구를 작동하거나 이미지를 검사할 수 없는 경우, 아직 완료되지 않은 작업이 무엇인지 설명해야 합니다.