작업 일정 관리자는 게임이 중지된 상태에서도 각 프레임에 대해 완료된 작업을 조정하고, 게임이 중지된 상태에서도 플레이어 입력을 감지하고, 캐릭터를 애니메이션하고, 물리 시뮬레이션을 업데이트하고, Global.RobloxGlobals.wait() 상태에서 스크립트를 재시작합니다.
여러 작업이 실행되는 동안 작업 일정 관리자는 잠재적으로 과부하될 수 있습니다. 다음과 같은 경우:
- 사용자 지정 캐릭터 리그 또는 입력 스키마를 사용하는 것.
- 자신이 애니메이션 부품을 사용하는 대신 (Animator 사용).
- 정확한 물리에 크게 의존합니다.
- 개체를 정기적으로 복제합니다.
프레임
프레임은 작업이 수행되는 게임 로직 단위입니다. 각 프레임은 작업을 효율적으로 수행하여 더 많은 프레임 per second 및 더 부드러운 플레이어 경험을 제공해야 합니다.
실행 서비스
프레임 간 게임 작업을 추가하는 가장 직접적인 방법은 RunService의 다음 멤버를 통해입니다.
스케쥴러 우선 순위
작업 일정 관리자는 다음과 같은 순서로 작업을 분류하고 완료합니다. 일부 작업은 프레임에서 작동하지 않지만 다른 작업은 여러 번 실행될 수 있습니다.
모범 사례
수행 중인 게임에 효율성을 고려하여 팔로잉참고하세요.
절대적으로 필요하지 않은 한 렌더 단계에 함수를 연결하지 마십시오. 오직 입력한 후 렌더링해야 할 작업만 이렇게 하여야 합니다. 예를 들어, 카메라 이동과 같이. 엄격한 순서를 위해 Class.RunService:BindToRenderStep()
대기 스크립트의 양을 최소화하십시오. while wait() do end 또는 while true do
Motor6D 변환은 미리 시뮬레이션 이벤트에서 수행해야 합니다. 그렇지 않으면 Animators 는 다음 프레임에 변경을 덮어씁니다. 심지어 Class.Mot