Performance — Introduzione
QUESTION
Perché il server è lento o i giocatori hanno lag?
La performance in FiveM dipende da tre cose: script (client e server), asset (peso di modelli e texture) e sincronizzazione (OneSync, entity budget). Questo modulo ti dà il metodo per misurarla e ottimizzarla.
| Obiettivo | Dettagli |
|---|---|
| Cosa imparerai | • Dove stanno i colli di bottiglia • Misurare performance con resmon e profiler • Asset budget e streaming • Pattern di codice efficienti |
| Prerequisiti | • Conoscenza base Lua (modulo 08) • Server configurato (modulo 11) |
I Tre Colli di Bottiglia
| Area | Sintomo | Strumento |
|---|---|---|
| Script client | FPS bassi, stutter | resmon (F8) |
| Script server | Latency, tick rate basso | profiler server, txAdmin |
| Asset | Download lento, streaming bloccato | peso delle risorse, LOD |
| Sincronizzazione | Entità che “spariscono”, lag di rete | entity budget, OneSync |
Metodo: Misura Prima di Ottimizzare
- Misura — trova dove sta il problema (resmon, profiler)
- Prioritizza — 1 script che brucia il 50% pesa più di 10 che bruciano il 2%
- Ottimizza — applica i pattern del modulo
- Rimisura — verifica che sia migliorato
- Ripeti
WARNING
Ottimizzare “a caso” senza misurare è tempo sprecato e può rompere funzionalità. Il 90% delle performance è deciso da pochi script/asset.
Struttura del Modulo
| Nota | Argomento |
|---|---|
| 01 | Introduzione (questa) |
| 02 | Resmon e Profiling — misurare client e server |
| 03 | Asset Budget e Streaming — poligoni, texture, LOD |
| 04 | Ottimizzazione Script — pattern Lua efficienti |
| 05 | Entity Budget — entità, leak, pool |
Quick Wins (subito utili)
- Ogni
while trueha unWait(N)sensato (NONWait(0)per tutto) - Niente
ox_target:addModelin loop - Le texture non superano le dimensioni necessarie
- I loop che controllano il mondo usano distanza con
#(...)e sleep - Le entità vengono cancellate quando non servono più
TIP
Prossimo passo: 02 - Resmon e Profiling
Torna alla: Indice Generale