Pool de diffusion de textures UE5 dépassé : diagnostiquer et réparer

Réparer le dépassement du pool de streaming de textures UE5 avec STAT STREAMING, les vérifications des mip et des Mips non streamés, les tests de PoolSize mesurés et la validation du build packagé.

Seele Editorial TeamUpdated 19 septembre 2026
Mémoire en streaming de textures UE5 et concept de résidence MIP pour diagnostiquer un avertissement de dépassement de budget dans la piscine.

Guide visuel pour le pool de streaming de textures UE5 dépassant le budget : diagnostiquer et corriger

Corriger le pool de streaming de textures dépassant le budget sans en cacher la cause

Reproduire l’avertissement sur la même carte et la même route caméra, capturer le STAT STREAMING, et identifier si des mips surdimensionnés, des assets Never Stream, des MIPS non-Streaming ou le budget matériel cible ont causé le surplus. Considérez r.Streaming.PoolSize comme une variable de test mesurée ; un nombre plus élevé n’est pas une solution durable à moins que le GPU cible ne puisse se le permettre.

  • Taille du pool de capture, pool requis, mips visibles, mips non-streaming, résolution, scalabilité et RHI.
  • Corrigez la résolution des textures, la disponibilité des MIP, les flags de streaming et l’utilisation des matériaux avant de lever le budget.
  • Répétez la route dans l’éditeur, en autonomie, et dans une compilation packagée sur du matériel de classe cible.

Réponse directe : corriger « Pool de streaming de textures dépassant le budget » sans en cacher la cause

« Pool de streaming de textures dépassant le budget » signifie que le streamer de textures d'Unreal veut plus de mémoire de textures que ce que le pool permet actuellement pour la scène et la vue. Commencez par STAT STREAMING, reproduisez l'avertissement à partir du même trajet de caméra, et identifiez si l'excédent provient de mips de texture surdimensionnés, de mips manquants ou inutilisables, d'assets Never Stream, d'allocations inattendues non liées au streaming, ou d'un budget pool vraiment trop faible pour le matériel cible. Utilisez r.Streaming.PoolSize uniquement comme variable de test mesurée. Ne choisissez pas une valeur universelle de mégaoctets ni ne relancez le pool tant que l'avertissement n'a pas disparu.

La solution durable est une décision de contenu et de plateforme : définir un budget mémoire texture pour chaque classe cible, rendre les textures coûteuses streamables, réduire la résolution uniquement là où le résultat visuel subsiste, préserver les mip chaînes et compressions nécessaires, puis valider la même route représentative dans l’éditeur, le PIE, la version autonome et une compilation packée. Le texturing virtuel peut aider des charges de travail grandes ou en couches spécifiques, mais il ne remplace pas automatiquement le diagnostic du streaming de textures conventionnel.

Liste de contrôle pour le triage rapide

  1. Reproduisez l’avertissement à partir d’une carte nommée, de la route de la caméra, de la résolution, du niveau de scalabilité et de l’RHI cible.
  2. Exécutez STAT STREAMING et capturez le pool, le pool requis, les mips visibles, les mips cachés, les mips forcés et les valeurs non-streaming.
  3. Inspectez les textures contributrices les plus importantes avant de changer les paramètres à l’échelle du projet.
  4. Testez un changement à la fois : dimensions de texture, disponibilité du mip, biais LOD ou groupe de textures, compression, Never Stream, utilisation des matériaux ou taille du bassin.
  5. Relancez la même route caméra et comparez la mémoire, la qualité d’image, le pop-in et le rythme des images.
  6. Confirmez le résultat dans une compilation autonome ou emballée sur des dispositifs représentatifs à basse, moyenne et haute mémoire.

Ce que l’avertissement mesure réellement

Le streamer de textures d'Unreal sélectionne quels mips doivent rester résidents pour les vues actuelles tout en respectant un pool mémoire. Le pool n'est pas simplement « toutes les textures de couleur visibles ». Le fichier Texture Streaming Configuration d'Epic note que r.Streaming.PoolSize s'exprime en mégaoctets et que le pool de textures peut inclure des textures d'interface utilisateur, NeverStream des textures, des cubemaps, et, sur certaines plateformes, des ressources GPU non texturées. C'est pourquoi un avertissement peut persister même lorsque les textures les plus proches de la caméra paraissent ordinaires.

L’avertissement est un signal de budget, pas la preuve d’un seul atout défectueux en particulier. Une scène peut dépasser son budget parce que plusieurs ensembles de textures individuellement raisonnables deviennent résidents ensemble, parce qu’une caméra cinématographique rend de nombreux mips à haut niveau de détail désirables, parce qu’un asset n’a pas de chaîne MIP utilisable, ou parce que les allocations non diffusées en streaming consomment de la marge de manœuvre. Inversement, un pool plus grand peut être correct lorsque le pool existant est inférieur au budget mesuré disponible sur le matériel d’expédition. La décision doit être liée à un profil de plateforme et à une charge de travail reproductible.

Ne confondez pas cet avertissement avec un plantage générique de mémoire hors mémoire du GPU. Le streamer peut être sur son pool demandé pendant que le processus est encore en cours. Il réagit en abandonnant les mips recherchés, ce qui peut produire des textures floues, des changements de détails tardifs, une résidence instable ou des avertissements répétés du pool. Un plantage, un retrait d’appareil ou une épuisement plus large de la mémoire de rendu nécessite une enquête plus large sur la mémoire GPU.

Diagnostiquez l’avertissement avec STAT STREAMING

Ouvrez la carte concernée, placez la caméra sur la route défaillante, attendez que le chargement se stabilise, et exécutez :

Diagramme de diagnostic de streaming de textures séparant la demande de pool, les MIP forcés et la mémoire non-streaming.
Expliquez le diagnostic de la mémoire en streaming, forcée et non-streaming.
STAT STREAMING

Les documents Texture Streaming Metrics d'Epic STAT STREAMING comme vue principale des performances du streaming de textures et des compteurs mémoire. Capturez-le après un chargement à froid puis à nouveau après la traversée représentative ; une seule capture d'écran de l'éditeur inactif peut manquer le pic. Gardez la version moteur, la résolution d'écran, le niveau de scalabilité, le mode viewport de l'éditeur et RHI avec la capture afin qu'un autre développeur puisse le répéter.

Lisez les groupes comme une carte de cause plutôt que de chercher un seul nombre rouge :

  • Les mips requis ou recherchés dépassent le pool de streaming : La vue actuelle demande plus de détails en streaming que ce que le budget permet. Triez les grandes textures, inspectez les dimensions souhaitées et comparez la politique des groupes de textures.
  • Les mips forcés sont élevés : les assets, composants, cinématiques ou code peuvent forcer la résidence. Trouvez des réglages résidents dans la Force et prouvez qu’ils sont nécessaires pour le plan ou le gameplay.
  • NonStreaming Mips sont élevés : mémoire en dehors de la résidence streamable normale consomme la marge de tête. Inspectez Never Stream, UI, cubemaps, cibles de rendu et autres allocations avant de lever le pool.
  • Les mips visibles ne montent que sur une route particulière : la distance de la caméra, le champ de vision, l’occlusion ou un amas de matériaux denses entraînent le pic. Profilez cet itinéraire et réduisez la demande simultanée à haute résolution et résolution.
  • L’avertissement n’apparaît qu’après des voyages répétés : des références obsolètes, des caches chaudes ou un comportement au cycle de vie peuvent être impliqués. Comparez un lancement propre, des déplacements répétés et un démontage avec la même séquence de test.

Les noms exacts des compteurs et la mise en page peuvent changer selon les versions Unreal. Utilisez le sélecteur de versions de la documentation Epic qui correspond au projet et enregistrez la sortie complète plutôt que de copier un seuil d’une capture d’écran du forum.

Trouvez les assets et les réglages qui créent le pic

Commencez par des preuves issues de la vue défaillante, puis inspectez les éléments les plus susceptibles de l’expliquer. Les vérifications utiles incluent les dimensions de texture, le format de pixels, le réglage de compression, le groupe de textures, le biais LOD, le réglage de génération MIP, le nombre de mips, Never Stream, et chaque chemin de matériau ou d’interface utilisateur qui référence la texture. Une texture 4K n’est pas automatiquement fausse ; elle est incorrecte lorsque son niveau de détail résident coûte plus que sa contribution visuelle mesurable sur la vue cible et le matériel.

Pour les éléments importés FBX, GLB, OBJ, USD, scan ou générés par IA, gardez le transfert complet visible : Upload ou Import → Preview → Correction → Optimiser → convertir → exporter → valider Unreal. Vérifier que les packages sources n’ont pas attaché plusieurs maps 4K quasi identiques, intégré des matériaux inutilisés, exporté un masque sous forme de texture couleur non compressée, ou omis les dimensions compatibles MIP. Le nettoyage pré-importation réduit le bruit, mais la décision finale de résidence doit toujours être vérifiée dans Unreal car les matériaux, groupes de textures, règles de streaming et profils de plateforme sont natifs au projet.

Prêtez une attention particulière à ces causes profondes :

  • Résolution de source surdimensionnée : la texture contient des détails que l’élément ne montre jamais à l’écran. Comparez la taille maximale projetée sur la route réelle de la caméra avant de la réduire.
  • Génération mip manquante ou désactivée : le streamer ne peut pas sélectionner des niveaux de détail moins chers. Corrigez la politique d’importation ou de génération de mip et inspectez la qualité à distance.
  • Politique de groupe de textures inappropriée ou LOD : un groupe large peut garder plus de détails que ce dont cette classe d’actifs a besoin. Préfère une politique de groupe détenue plutôt que des exceptions dispersées par actif.
  • Mauvais type de compression ou de sémantique : les normes, masques, données HDR, interfaces et textures de couleur ont des exigences différentes. Sélectionnez la compression selon la signification des données, pas seulement l'extension de fichier.
  • Never Stream ou résidence forcée : réservez-les aux actifs qui nécessitent réellement une résidence stable et complète en détail. Ne les retirez qu’après avoir vérifié qu’il n’y a pas d’exigence d’interface, de cinéma ou de gameplay.
  • Références dupliquées ou inutilisées : instances de matériaux, maillages cachés, variantes ou contenu obsolète peuvent garder des textures évitables pertinentes. Supprimez les références par une révision normale du contrôle de version, puis faites cuire et tester à nouveau.

Corrigez la cause profonde dans le bon ordre

Utilisez le plus petit changement réversible qui répond à la cause mesurée. Cet ordre permet de garder visible la qualité visuelle et les contraintes de plateforme.

Flux de travail de réparation du streaming de textures UE5 depuis MIP et corrections d’assets jusqu’à la validation du budget de la plateforme.
Expliquez la séquence de réparation et de validation réversibles.
  1. Gèle la ligne de base.Sauver les en difficultéSTAT STREAMINGcapturer, tracer, construire une identité, cadre de piscine, et captures d'écran aux points de comparaison.
  2. Disponibilité des mip de réparation. Assurez-vous que les textures de mondes streamables ont des mip chaînes valides et que la génération de mip n’a pas été désactivée par inadvertance. Réimportez uniquement depuis un asset source contrôlé.
  3. Ajustez correctement les textures les plus lourdes. Réduisez les dimensions ou appliquez un biais LOD lorsque la caméra cible ne peut pas résoudre le détail supprimé. Vérifiez les objets héros et les gros plans séparément des éléments d’arrière-plan.
  4. Correcte politique de groupe et de compression. Placez les assets associés sous un groupe de textures délibéré et une compression adaptée aux données. Revérifiez la taille du paquet, la mémoire et les artefacts visibles.
  5. Supprimer la résidence forcée injustifiée. Auditer Never Stream et le comportement de résident forcé, puis tester les cinématiques, l’interface, les virages rapides et les cas de téléportation pour détecter des apparitions inacceptables.
  6. Réduire la demande simultanée. Diviser les ensembles de matériaux trop denses, supprimer les cartes dupliquées, simplifier les variantes lointaines, ou modifier la composition des niveaux lorsque trop de textures coûteuses deviennent nécessaires en même temps.
  7. Évaluer le pool en dernier. Si le contenu optimisé correspond toujours au budget GPU-mémoire mesuré du matériel avec une marge de manœuvre sûre, définissez délibérément un pool spécifique à la plateforme et documentez pourquoi.

Lors du diagnostic, vous pouvez modifier la valeur d’exécution en tant qu’expérience :

r.Streaming.PoolSize 1500

Ce chiffre est une commande d'exemple, pas une valeur de production recommandée. Un changement de console est temporaire et aide à répondre « plus de marge de pool éliminerait-il cette pression spécifique ? » La configuration persistante appartient à la configuration revue du projet et à la stratégie de profil de l'appareil. La valeur correcte varie selon la plateforme, la mémoire GPU, la résolution, les autres fonctionnalités de rendu et le pic de la scène. Testez d'abord des dispositifs à faible mémoire ; une station de travail éditrice peut masquer un choix d'expédition dangereux.

Décidez quand le texturing virtuel est pertinent

Le streaming de textures conventionnel et le Texturing Virtuel résolvent des problèmes de résidence qui se chevauchent mais diffèrent. Le résumé de Texture Streaming Overview d'Epic explique le flux de travail conventionnel du streamer ; Le Texturing Virtuel à l'Exécution et le Streaming Virtual Texturing introduisent leurs propres considérations de production de tuiles, de rétroaction, de matériau, de cache et de plateforme. N'activez pas le texturing virtualisé simplement parce qu'un avertissement de pool conventionnel est apparu.

Le texturing virtuel mérite une évaluation séparée lorsque la charge de travail contient de très grandes surfaces, des données de paysages superposées ou des ensembles de textures dont le motif d’accès en tuiles convient mieux que la résidence MIP complète. L’évaluation doit inclure la compatibilité des matériaux, le comportement d’envoi des tuiles, la pression du cache, la latence visuelle, la taille de cuisson, le support de la plateforme cible, ainsi que le coût du shader ou de l’échantillonnage. Gardez une solution de secours et comparez les deux chemins sous la même route caméra et la même révision de contenu.

Si le problème est des textures 4K dupliquées, des mips manquants, un format de compression incorrect ou un Never Stream injustifié, convertir la charge de travail peut faire avancer le coût sans corriger l’erreur de contenu. Corrigez d’abord ces problèmes d’authoring. Utilisez le guide dédié Runtime Virtual Texturing pour la décision RVT séparée plutôt que de mélanger deux migrations en une seule passe de dépannage.

Valider la qualité de l’image, les performances et l’emballage

Un résultat de passage nécessite plus qu’un simple avertissement validé. Exécutez une matrice reproductible et conservez les preuves avant et après :

  • Viewport de l’éditeur : capture STAT STREAMING, captures d’écran de la caméra de référence, et pools plus valeurs non streamantes. Passer lorsque l’avertissement est expliqué et que le détail attendu reste stable.
  • PIE : démarrage, traversée, pop-in des textures et pacing des images. Passe quand la route du gameplay reste dans le budget sans mips tardifs inacceptables.
  • Autonome : utilise un lancement à froid et répète la route à la résolution représentative. Passe lorsque le résultat ne dépend pas de l’état chaud réservé à l’éditeur.
  • Compilation packagée : exécute une compilation de développement ou de test sur chaque classe matérielle. Passe quand la politique du pool, les mips cuits, la compression et la qualité correspondent à la configuration d’expédition.
  • Route de stress : Exercice de voyage rapide, téléportation, coupes de caméra, scène dense ou voyage répété sur la carte. Passe lorsque le pic se retrouve de façon prévisible sans accumuler de résidence inexpliquée.

Comparez la mémoire GPU avec le temps d’image et la sortie visuelle. Un pool plus faible peut réduire la résidence mais provoquer un flou ou un churn distrayant ; un pool plus grand peut supprimer l’avertissement tout en volant de la marge de manœuvre à Nanite, Lumen, cibles de rendu ou autres ressources GPU. Définir une exigence explicite de marge de manœuvre et échouer au test lorsqu’une autre fonction de rendu devient instable.

Validez en fonction des pourcentages réels d'écran et des niveaux de scalabilité du projet. Une capture fixe sur le bureau ne prouve pas le comportement de la console, de l'ordinateur portable, du streaming cloud ou mobile. Si une plateforme expose un contre-ensemble différent ou partage la mémoire avec le CPU, documentez cette limite et utilisez ses directives de profilage native plutôt que de traduire mécaniquement un budget GPU discret.

Correctifs courants ratés et quoi faire à la place

« Fixe la pool à une grande valeur et expédie-la »

Cela masque l’avertissement sans prouver que le matériel dispose d’une marge de manœuvre sûre. Utilisez une valeur plus grande uniquement comme expérience contrôlée, puis créez des budgets par plateforme à partir de builds emballés mesurés.

« Exécuter DisableAllScreenMessages »

Supprimer les messages à l’écran ne réduit pas le contenu de résidence ou de réparation. Conservez les avertissements lors du diagnostic et résolvez ou acceptez explicitement la condition budgétaire mesurée.

« Convertir chaque texture en Texturisation Virtuelle »

Les tuiles virtualisées ajoutent un flux de travail différent et un coût d’exécution différents. Sélectionnez-les pour une charge de travail adaptée après un profil côte à côte, et non comme une réaction globale à un seul pool d’avertissement.

« Réduire chaque texture »

Un downscaling généralisé peut nuire aux assets des héros, à l’interface, aux cinématiques ou à la lisibilité à courte portée. Classez les assets par contribution mémoire et taille projetée, puis prenez des décisions réversibles de groupe ou par asset.

« Ça passe dans PIE, donc c’est fixe »

PIE peut réutiliser l’état de l’éditeur et ne prouve pas les données coiffées ou les profils d’expédition. Répétez la route indépendante à froid et la route packée sur du matériel de classe cible.

Liste de contrôle des transferts d’équipe

  • Unreal Engine version, révision du projet, RHI cible, profil de l’appareil, résolution d’écran et niveau de scalabilité.
  • Carte défaillante et caméra déterministe ou route de jeu.
  • Captures avant et après STAT STREAMING, y compris le contexte pool et NonStreaming Mips.
  • Textures modifiées, fichiers sources, dimensions, paramètres MIP, compression, groupes et flags de résidence.
  • Les valeurs temporaires de la console restent séparées des changements de configuration persistants.
  • Points de comparaison visuelle et exceptions connues pour les éléments héros, UI, cinématiques ou d’accessibilité.
  • Résultats PIE, autonomes et packed build sur chaque classe de matériel revendiquée.
  • Révision du recul et la condition qui rouvre la décision budgétaire.

SEELE AI transfert et frontière de produit

Pour un nouveau concept, SEELE AI peut générer un jeu Unreal 5 natif, fournir une prévisualisation navigateur, supporter l’optimisation et le packaging, et fournir le projet ou la sortie packagée en téléchargement. Le Unreal game creator couvre ce chemin de création, tandis que le Unreal 3D asset optimizer prend en charge la revue des assets exportés avant l’importation Unreal.

Ce flux de travail pour un nouveau projet est distinct du dépannage d’un projet existant. Le travail sur les textures des projets existants reste avec l’équipe Unreal : ouvrir et modifier les .uproject actuels, modifier DefaultEngine.ini ou les profils de périphériques, désactiver le Texturing Virtuel, modifier les éléments de textures, exécuter STAT STREAMING, cuisiner la compilation, et valider le budget de la plateforme. Unreal Engine est une marque déposée d’Epic Games ; ce guide indépendant n’implique pas l’approbation d’Epic.

FAQ

Que signifie « Pool de streaming de textures dépassant le budget » dans UE5 ?

Cela signifie que le streamer de textures souhaite plus de mémoire pour les vues actuelles que ce que son pool configuré permet. Il n’identifie pas une texture défectueuse à lui seul. Capturez STAT STREAMING et inspectez la demande en streaming, forcée et non streaming avant de décider si la cause profonde est le contenu, la politique de résidence ou un budget de plateforme réellement sous-dimensionné.

Quelle commande affiche la mémoire de flux de textures dans Unreal Engine ?

Utilisez STAT STREAMING sur la console Unreal et reproduisez l’avertissement via une caméra fixe ou une route de jeu. Enregistrez la capture complète avec la version moteur, RHI, la résolution, le niveau d’évolutivité, la carte et l’identité de la construction. La disposition des compteurs peut varier selon la version du moteur, donc utilisez la version correspondante de la documentation Epic.

Augmenter r.Streaming.PoolSize est-il une solution valable ?

Elle peut être valable lorsque les mesures de compilation packed montrent que le contenu optimisé nécessite un pool plus large et que le matériel cible conserve une marge mémoire GPU sûre. Ce n’est pas une solution universelle. Utilisez-la temporairement pour tester l’hypothèse, puis documentez un budget persistant spécifique à la plateforme au lieu de copier une valeur d’un mégaoctet entre les appareils.

Pourquoi les Mips non-Streaming sont-ils élevés ?

Les Mips non-Streaming élevés peuvent pointer vers une mémoire que le streamer normal ne peut pas réduire librement, y compris les textures Never Stream, la résidence forcée, les textures UI, les cubemaps ou d’autres allocations incluses dans le pool sur certaines plateformes. Tracez les assets et types de ressources contributeurs avant d’augmenter le pool ou de réduire les textures streamées non liées.

Dois-je activer la texturisation virtuelle pour supprimer l’avertissement de pool ?

Pas automatiquement. Le texturage virtuel est un flux de travail de résidency en tuiles séparé avec des compromis sur le matériau, le cache, le feedback, le cook, le shader et la plateforme. Commencez par corriger les mipmaps manquantes, les cartes sources surdimensionnées, la compression incorrecte ou les groupes de textures, et la résidency forcée injustifiée. Comparez le texturage virtuel uniquement pour les charges de travail qui bénéficient réellement de l'accès en tuiles.

Comment vérifier une correction du streaming de textures avant la publication ?

Répétez le même parcours représentatif dans l’éditeur, PIE, en standalone, et dans une build packagée sur chaque classe de matériel annoncée. Comparez STAT STREAMING, la mémoire GPU totale, le rythme de la frame, la clarté des textures, le pop-in, le comportement au cold-load et la récupération après des coupures de caméra ou des déplacements. Gardez une révision de rollback et une exigence de marge documentée.