태스크 스케쥴러

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

작업 일정 관리자는 게임이 중지된 상태에서도 각 프레임에 대해 완료된 작업을 조정하고, 게임이 중지된 상태에서도 플레이어 입력을 감지하고, 캐릭터를 애니메이션하고, 물리 시뮬레이션을 업데이트하고, Global.RobloxGlobals.wait() 상태에서 스크립트를 재시작합니다.

여러 작업이 실행되는 동안 작업 일정 관리자는 잠재적으로 과부하될 수 있습니다. 다음과 같은 경우:

  • 사용자 지정 캐릭터 리그 또는 입력 스키마를 사용하는 것.
  • 자신이 애니메이션 부품을 사용하는 대신 (Animator 사용).
  • 정확한 물리에 크게 의존합니다.
  • 개체를 정기적으로 복제합니다.

프레임

프레임은 작업이 수행되는 게임 로직 단위입니다. 각 프레임은 작업을 효율적으로 수행하여 더 많은 프레임 per second 및 더 부드러운 플레이어 경험을 제공해야 합니다.

실행 서비스

프레임 간 게임 작업을 추가하는 가장 직접적인 방법은 RunService의 다음 멤버를 통해입니다.

스케쥴러 우선 순위

작업 일정 관리자는 다음과 같은 순서로 작업을 분류하고 완료합니다. 일부 작업은 프레임에서 작동하지 않지만 다른 작업은 여러 번 실행될 수 있습니다.

모범 사례

수행 중인 게임에 효율성을 고려하여 팔로잉참고하세요.

  • 절대적으로 필요하지 않은 한 렌더 단계에 함수를 연결하지 마십시오. 오직 입력한 후 렌더링해야 할 작업만 이렇게 하여야 합니다. 예를 들어, 카메라 이동과 같이. 엄격한 순서를 위해 Class.RunService:BindToRenderStep()

  • 대기 스크립트의 양을 최소화하십시오. while wait() do end 또는 while true do

  • Motor6D 변환은 미리 시뮬레이션 이벤트에서 수행해야 합니다. 그렇지 않으면 Animators 는 다음 프레임에 변경을 덮어씁니다. 심지어 Class.Mot