수면 시스템

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

Roblox 엔진의 각 조립체는 단일 강체에 해당합니다. 각 강체의 위치와 속도는 해당 강체가 위치한 곳과 이동 속도를 설명하며, 엔진의 주요 작업 중 하나는 각 조립체의 위치와 속도를 업데이트하는 것입니다.

조립체는 기계적 제약 조건이동 제약 조건으로 연결하여 자동차나 비행기와 같은 메커니즘을 형성할 수 있습니다. 메커니즘의 조립체와 제약 조건의 수가 증가하면, 메커니즘을 시뮬레이션하는 데 필요한 시간도 증가합니다. 다행히, 수면 시스템은 엔진이 움직이지 않는 조립체의 시뮬레이션을 건너뛰어도 된다고 판단할 때 이 증가를 상쇄합니다.

수면 상태

각 조립체는 깨움, 잠자는 중, 또는 수면 검사 중 중 하나의 세 상태 중 하나에 있을 수 있습니다.

깨움

깨워진 조립체는 움직이거나 가속하고 있으므로 시뮬레이션됩니다. 조립체는 잠자는 중수면 검사 중 상황에서 이 상태로 진입하며, 추가 깨움 상황에서도 진입할 수 있습니다.

잠자는 중

잠자는 중인 조립체는 움직이거나 가속하지 않으므로 시뮬레이션되지 않습니다.

조립체가 움직이지 않는 것으로 판단되기 위해서는 선형 속도회전 속도를 확인합니다. 선형 속도가 선형 속도 임계값보다 작고 회전 속도가 회전 속도 임계값보다 작으면 그 조립체는 움직이지 않는 것으로 간주됩니다.

어떤 경우에는 단순히 움직이지 않는지 확인하는 것만으로 조립체가 잘못하여 잠자는 상태로 들어가는 경우가 있을 수 있습니다. 예를 들어, 공이 직선으로 위로 던져질 때 최대 높이에 도달하면 속도가 0에 가까워져 잠자는 후보가 되어 다시 떨어지지 않게 됩니다. 이러한 경우를 처리하기 위해 엔진은 조립체의 선형 가속도회전 가속도가 각각 선형 가속도회전 가속도 임계값보다 크면 조립체가 가속중으로 간주하며, 조립체가 잠들지 않도록 합니다.

수면 검사 중

움직이지 않는 조립체가 최소한 하나의 깨워진 이웃 조립체와 제약 조건을 공유하고 있는 경우 수면 검사 중 상태로 들어가며 시뮬레이션되지 않습니다. 각 월드 스텝에서 수면 검사 중인 조립체는 다음을 확인합니다:

이 조건 중 하나라도 참이면, 또는 추가 깨움 상황 중 하나에 해당하면, 수면 검사 중인 조립체는 깨움 상태로 진입합니다.

임계값 참조

다음 표는 조립체가 움직이거나 가속하는지 판단하는 데 사용되는 다양한 속도 및 가속 임계값을 제공합니다.

임계값상태 변화
선형 속도0.33 스터드/초깨움잠자는 중
회전 속도0.42 스터드/초깨움잠자는 중
선형 가속도0.24 스터드/초²깨움잠자는 중
회전 가속도0.24 스터드/초²깨움잠자는 중
이웃 선형 속도0.48 스터드/초수면 검사 중깨움
이웃 회전 속도0.59 스터드/초수면 검사 중깨움
깨움 선형 가속도16.9 스터드/초²깨움잠자는 중
깨움 회전 가속도16.9 스터드/초²깨움잠자는 중

회전 속도와 가속도 임계값은 조립체 경계 구(조립체의 모든 부분을 포함하는 구) 위에 위치한 점의 속도와 가속도를 반영하며, 해당 점은 조립체와 함께 강직하게 이동합니다.

구동 조인트

때때로 개발자는 구동 조인트를 사용하여 매우 느리게 부품을 움직이고 싶어합니다. 구동 조인트는 연결된 부품에 힘이나 운동을 적용하여 구동하는 제약 조건으로, HingeConstraintMotor를 사용하는 경우와 같습니다. 이러한 시나리오를 지원하기 위해, 구동 조인트에 연결된 조립체는 더 엄격한 수면 속도 임계값을 사용하여 느리게 움직이는 경우에도 물리 시스템이 조립체를 조기에 잠들지 않도록 합니다.

다음은 구동 조인트로 간주되는 것들입니다:

추가 깨움 상황

수면 검사 중잠자는 중에 설명된 상황 외에도, 조립체는 다음 조건에서 깨움 상태로 진입합니다:

디버그 시각화

플레이 테스트 중에 조립체의 수면 상태를 시각화하려면 3D 뷰포트의 오른쪽 상단에 있는 시각화 옵션 위젯에서 깨워진 부품을 활성화합니다.

3D 뷰포트의 오른쪽 상단에 시각화 옵션 버튼이 표시된 클로즈업 이미지.

활성화되면, 시뮬레이션된 부품은 현재 수면 상태에 따라 윤곽이 표시되며, 깨워진 부품은 빨간색으로, 수면 검사 중 부품은 주황색으로, 잠자는 중 부품은 윤곽 표시가 없습니다.

현재 수면 상태를 나타내는 색상으로 윤곽이 표시된 시뮬레이션된 부품
©2026 Roblox Corporation. Roblox 및 Roblox 로고, 'Powering Imagination'은 미국 및 기타 국가 내 당사의 등록 및 미등록 상표입니다.