Pianificatore di attività

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Il pianificatore di attività coordina le attività eseguite in ogni fotogramma mentre il gioco è in esecuzione, anche quando è in pausa. Queste attività includono la rilevazione dell'input del giocatore, l'animazione dei personaggi, l'aggiornamento della simulazione fisica e la ripresa degli script in uno stato di task.wait().

Sebbene ci possano essere più attività in esecuzione, il pianificatore di attività potrebbe essere sovraccarico, specialmente nelle seguenti situazioni:

  • Utilizzando un rig di personaggio o uno schema di input personalizzato.
  • Animando le parti da soli (anziché utilizzare un Animator).
  • Dipendendo pesantemente da fisiche precise.
  • Replicando oggetti regolarmente.

RunService

Il modo più diretto per aggiungere attività fotogramma per fotogramma è attraverso i seguenti membri di RunService:

Priorità del pianificatore

Il pianificatore di attività categorizza e completa le attività nel seguente ordine. Alcune attività potrebbero non eseguire lavoro in un fotogramma, mentre altre potrebbero essere eseguite più volte.

* L'esecuzione degli script durante RunService.Heartbeat differisce a seconda dell'impostazione Workspace.SignalBehavior del tuo gioco. Vedi Eventi differiti.

Migliori pratiche

Per costruire giochi performanti tenendo presente l'efficienza, nota quanto segue:

  • Non collegare/vincere funzioni al passo di rendering a meno che non sia assolutamente necessario. Solo le attività che devono essere svolte dopo l'input ma prima del rendering dovrebbero essere eseguite in questo modo, come il movimento della telecamera. Per un controllo rigoroso dell'ordine, utilizza BindToRenderStep() invece di PreRender.

  • Gestisci gli stati fisici con attenzione. PreSimulation si verifica prima della fisica, mentre PostSimulation si verifica dopo la fisica. Pertanto, la logica di gioco che influisce sullo stato fisico dovrebbe essere eseguita in PreSimulation, come impostare la Velocity delle parti. Al contrario, la logica di gioco che si basa su o reagisce allo stato fisico dovrebbe essere gestita in PostSimulation, come leggere la Position delle parti per rilevare quando entrano in zone definite.

  • Le modifiche alla trasformazione di Motor6D dovrebbero essere eseguite sull'evento PreSimulation. Se non lo fai, Animators sovrascriverà le modifiche nel fotogramma successivo. Anche senza un Animator, PreSimulation è l'ultimo evento Luau attivato prima che Motor6D.Transform venga applicato alle posizioni delle parti.

© 2026 Roblox Corporation. Roblox, il logo Roblox e Powering Imagination sono tra i nostri marchi registrati e non registrati negli Stati Uniti. e altri paesi.