장면 분석 도구는 Roblox Studio에서 클라이언트 및 서버 장면이 어떻게 구성되어 있는지, 어떤 리소스를 사용하고 있는지, 그리고 어떤 인스턴스가 해당 리소스 사용에 책임이 있는지에 대한 정보들을 한눈에 비교해 볼 수 있는 여러 보기를 제공합니다. 장면 분석은 플레이 및 테스트 세션 중에 사용하도록 설계되었으며, 클라이언트 및 서버 데이터 모델 모두를 검사할 수 있습니다.

장면 분석 활성화
메뉴 바에서 창 > 성능 요약 > 장면 분석을 선택합니다.
장면 분석 사용
장면 분석은 플레이 또는 테스트 세션 중에 사용하도록 설계되었습니다. 장면 분석 창을 열고 사용 가능한 모드를 살펴보세요. 모드가 활성화되면, 자원을 보여주는 상대적 크기를 나타내는 박스들—정사각형 트리맵 뷰—이 표시됩니다.
- 정사각형 트리맵 뷰 아래에는 현재 보기의 모든 항목 목록이 있습니다.
- 장면 분석에서 선택한 항목을 마우스 오른쪽 버튼으로 클릭하면 일반적으로 탐색기에서 그 항목으로 바로 이동할 수 있습니다.
- 검색 창을 사용하여 현재 표시된 항목의 이름으로 필터링할 수 있습니다.
모드
장면 분석에는 각기 다른 용도에 맞춰 설계된 다양한 모드가 있습니다.
스크립트 메모리
이 뷰는 각 Script, LocalScript, 및 ModuleScript가 Luau VM에서 얼마나 많은 메모리를 사용하고 있는지를 보여줍니다. 이는 테이블 및 기타 스크립트 할당으로 사용되는 메모리이며, 애니메이션, 텍스처, 소리와 같은 자산이 사용하는 메모리는 아닙니다. 이 뷰는 스크립트가 실행되는 일반 위치와 Script 대 ModuleScript로 더 나누어져 있습니다.
부모가 없는 인스턴스
부모가 없는 인스턴스 뷰는 각 타입별로 인스턴스를 참조하고 있는 스크립트 및 모듈을 보여줍니다.
인스턴스를 참조하는 스크립트는 정상적이며, 그 자체로는 버그나 메모리 누수를 나타내는 것은 아닙니다. 그러나 메모리 누수를 조사 중이라면, 이 뷰는 스크립트가 예상치 못한 작업을 하고 있는지를 쉽게 파악할 수 있게 해줍니다.
메모리 누수의 근본 원인을 찾는 데 여전히 어려움이 있다면, 이 도구는 개별 할당에 대한 더 많은 정보를 제공할 수 있는 Luau 힙 도구를 보완합니다.
이 뷰에서 어떤 스크립트를 마우스 오른쪽 버튼으로 클릭하여 탐색기에서 직접 선택할 수 있습니다.
인스턴스 구성
인스턴스 구성 뷰는 현재 클라이언트 또는 서버에 존재하는 인스턴스를 보여줍니다. 이는 복잡한 빌드 작업을 수행할 때 매우 유용합니다. 각 인스턴스는 복제 및 메모리 비용이 따르기 때문입니다.
캐릭터, 기하학, 텍스처와 같은 카테고리는 장면의 균형을 이해하는 데 도움을 주도록 설계되었습니다. 예를 들어, 25,000개의 파티클 방출기가 있는 것이 의도한 것이 아닐 수 있지만, 이 뷰를 통해 그것을 알 수 있습니다.
이 뷰는 특정 유형의 모든 인스턴스를 쉽게 선택할 수 있게 해줍니다.
오디오 메모리
오디오 메모리 뷰는 각 오디오 자산이 현재 소모하고 있는 메모리 양을 보여줍니다. 특정 오디오 트랙이 실제로 사용하는 메모리는 상당히 복잡하지만, 실용적인 측면에서는 오디오 트랙을 참조하는 모든 인스턴스를 삭제하면 해당 메모리를 언로드할 수 있습니다.
이 뷰에서 어떤 오디오 자산을 마우스 오른쪽 버튼으로 클릭하면 그것을 사용하는 모든 인스턴스를 선택할 수 있습니다.
애니메이션 메모리
애니메이션 자산은 프로덕션에서 메모리 누수의 가장 일반적인 원인 중 하나입니다. Roblox는 사용하지 않는 애니메이션 자산을 aggressive하게 언로드하지만, 스크립트가 부모 모델이 파괴된 후에도 애니메이션을 계속 살아있게 두는 경우가 일반적입니다.
오디오 자산과 마찬가지로 애니메이션 자산을 참조하는 모든 인스턴스를 삭제하면 해당 애니메이션 자산을 언로드할 수 있습니다.
이 뷰는 부모가 없는 인스턴스 뷰와 함께 애니메이션의 생애 주기를 추적하고 실제로 얼마나 많은 메모리를 사용하는지를 쉽게 확인할 수 있게 해줍니다.
이 뷰에서 어떤 애니메이션을 마우스 오른쪽 버튼으로 클릭하면 그것을 사용하는 모든 인스턴스를 선택할 수 있습니다.
삼각형 구성
삼각형 구성 뷰는 현재 메인 뷰포트에서 렌더링되고 있는 삼각형과 드로우 호출에 대한 더 자세한 분석을 제공합니다.
이 분석에는 그림자, 불투명, 투명, 지형, 풀, 파티클, 하늘, UI의 카운트가 포함됩니다.
이 구성 정보는 장면 기하학이 어떻게 구성되어 있는지를 이해하고 장면에 예상치 못한 기하학이 포함되어 있는 경우를 식별하는 데 도움을 줍니다.
엔진 API
SceneAnalysisService를 통해 프로그래밍적으로 장면 분석 데이터를 접근할 수도 있으며, 이는 MCP 서버를 통해 노출됩니다. 각 메서드는 시각적 디스플레이가 사용하는 것과 동일한 데이터를 제공하는 중첩 자식을 포함하는 테이블을 반환합니다.
| 메서드 | 설명 |
| GetInstanceCompositionAsync | DataModel 트리에서 카테고리 및 클래스별 인스턴스 카운트를 반환합니다. |
| GetScriptMemoryAsync | 스크립트 별로 Luau VM 힙 메모리 사용량을 바이트 단위로 반환합니다. |
| GetUnparentedInstancesAsync | DataModel에 더 이상 존재하지 않지만 Luau에서 보유하는 인스턴스를 호스트 스크립트별로 그룹화하여 반환합니다. |
| GetTriangleCompositionAsync | 렌더 패스별 삼각형 및 드로우 호출 카운트를 반환합니다. |
| GetAnimationMemoryAsync | 클립별로 중복 제거된 로드된 애니메이션 클립 메모리를 반환합니다. |
| GetAudioMemoryAsync | 자산 ID별로 중복 제거된 로드된 오디오 자산 메모리를 반환합니다. |