Textures, fichiers et packs · 3 min de lecture
Perte de textures FiveM (ville floue) : comment la corriger
Lire en: English · Español · Deutsch · Português · Italiano · Polski · Türkçe · Русский
Les joueurs entrent dans la ville et les routes sont floues, les bâtiments restent gris pendant des secondes, parfois les textures ne se chargent jamais. Dans FiveM, on appelle cela la perte de textures, ou le « city bug ». Quand cela n'arrive que sur votre serveur, la cause vient en général de ce que votre serveur diffuse.
Qu'est-ce que la perte de textures
Tout ce que diffuse votre serveur (véhicules, vêtements, props, cartes) partage la mémoire de textures que le jeu réserve à sa propre ville. Quand ce qu'un joueur doit charger autour de lui ne tient pas, les textures arrivent en retard, floues ou n'arrivent pas.
FiveM signale lui-même les pires coupables. Tout fichier en streaming de plus de 16 MiB de mémoire reçoit un avertissement dans la console du serveur, et à partir de 48 MiB l'avertissement le dit clairement : "Oversized assets can and WILL lead to streaming issues (such as models not loading/rendering)." (Ce que mesure cet avertissement.)
Les causes habituelles sur un serveur :
- Des fichiers trop volumineux : textures 4K de véhicules et de vêtements, un pack entier entassé dans un seul
.ytd. - Le même fichier diffusé par deux ressources : le jeu n'en reçoit qu'un, et vous payez la diffusion de l'autre.
- Les mêmes textures répétées dans les dictionnaires d'un pack : chaque copie est diffusée.
- Des textures sans mipmaps : le jeu n'a pas de niveau plus petit où se replier, elles coûtent donc leur taille pleine à toute distance.
Si un joueur subit la perte de textures sur tous les serveurs qu'il rejoint, le problème vient de son côté (ses réglages ou son PC), pas de vos ressources.
Étape 1 : voir ce que diffuse votre serveur
Déposez tout votre dossier resources dans Server Budget. Il lit l'en-tête de chaque fichier diffusé dans votre navigateur, donc rien n'est envoyé, et c'est gratuit sans connexion. Vous obtenez :
- Graphics memory (mémoire graphique) et System memory (mémoire système) de tout ce que vous diffusez.
- By resource (par ressource), trié par mémoire : les ressources à examiner en premier.
- Oversized (trop volumineux) : chaque fichier de plus de 16 MiB de mémoire graphique.
- Streamed by more than one resource (diffusé par plus d'une ressource) : gardez une copie de chacun.

Ces totaux représentent ce que le serveur pourrait diffuser, pas ce qu'un joueur charge à la fois : un joueur ne charge que ce qui l'entoure. C'est tout de même la bonne liste pour tout passer en revue.
Étape 2 : alléger les fichiers trop volumineux
Déposez les fichiers de stream signalés dans l'Asset Optimizer, réglez Largest texture size (1024, ou 2048 pour ce qui est vu de près), laissez Add missing mipmaps coché, et téléchargez les fichiers allégés. Ils gardent leurs noms, donc ils retournent directement dans stream/.
Étape 3 : partager les textures répétées
Pour un pack qui répète les mêmes textures dans de nombreux dictionnaires (les packs de vêtements et de véhicules le font souvent), Texture Dedupe repère les copies, les déplace dans un seul .ytd commun, et écrit le gtxd.meta et les lignes du fxmanifest qui permettent aux modèles de les trouver là. Seules les textures de même nom et aux mêmes pixels sont déplacées.
Les parents des textures sont lus quand un joueur rejoint. Après les avoir modifiés, les joueurs doivent se reconnecter, sinon les véhicules peuvent apparaître sans texture jusque-là.
Étape 4 : vérifier que rien ne manque
Déposez la ressource modifiée dans Missing Textures Check : chaque modèle doit toujours trouver toutes ses textures. Puis déposez à nouveau le dossier dans Server Budget et comparez.
La même solution, avec Server Budget et l'Asset Optimizer, fait aussi l'objet d'un tutoriel vidéo.
Questions
- Une seule ressource peut-elle provoquer la perte de textures ?
- Oui, si elle est assez lourde : un seul pack de véhicules ou de vêtements avec des textures 4K peut diffuser une grande partie de tout ce que votre serveur envoie. C'est pourquoi Server Budget trie les ressources par mémoire.
- Faut-il supprimer des ressources ?
- En général non. Réduire les textures trop volumineuses, retirer les fichiers diffusés deux fois et partager les textures répétées allège la plupart des serveurs de façon importante, sans rien retirer.

L'outil pour cela
Server Budget
Déposez votre dossier de ressources : la mémoire diffusée par chaque ressource, les fichiers trop volumineux signalés par FiveM et les fichiers diffusés deux fois.
Ouvrir Server BudgetAussi utile ici: Asset Optimizer · Texture Dedupe

