Wiki
Règles de validation
Contrôles de validation d'assets exécutés au check-in depuis l'éditeur Unreal : les 9 règles intégrées, les sévérités error / warning / info, la config JSON, export / import / reset, et la limite à connaître.
Introduction
Les règles de validation sont des contrôles d'assets Unreal exécutés au moment du check-in depuis l'éditeur Unreal : nommage, taille de texture, dépendances manquantes, etc. Elles servent à faire respecter les conventions du studio automatiquement, avant que le contenu n'entre dans le dépôt (le projet versionné sur le serveur). Elles se configurent par dépôt.
Où les règles s'appliquent vraiment
uversion checkin) ou
depuis le plugin Rider contourne intégralement la politique de validation, sans
erreur et sans laisser de trace.
Ce n'est pas un défaut de configuration de votre part : c'est le fonctionnement actuel. Les règles portent sur des
assets Unreal (.uasset, .umap) et leur inspection demande l'éditeur ouvert, avec le
projet chargé. Traitez-les donc comme un garde-fou pour les artistes qui travaillent dans l'éditeur,
et non comme une barrière que personne ne peut franchir.
Deux conséquences pratiques :
- Si une convention doit être garantie et non seulement encouragée, prévoyez un contrôle en plus (revue, vérification côté build) : les règles seules ne l'assurent pas.
- Si une règle « ne se déclenche jamais » chez quelqu'un, vérifiez d'abord par où il soumet. Un artiste qui soumet depuis le client desktop ne verra aucune validation, quelle que soit la configuration.
Accès et rôles
L'onglet Rules est accessible au super admin et au project_admin sur les dépôts qu'il administre.
Sévérités
La sévérité décide de ce qui se passe dans l'éditeur Unreal quand une règle activée échoue.
| Sévérité | Effet au check-in depuis l'éditeur Unreal |
|---|---|
error | Bloque le check-in : la fenêtre de validation s'ouvre, le bouton Proceed est grisé et seul OK reste cliquable. Il faut corriger l'asset. |
warning | N'empêche pas de soumettre, mais ne passe pas en silence : la fenêtre de validation s'ouvre quand même, liste les avertissements, et l'utilisateur doit cliquer Proceed pour continuer. |
info | Purement informatif : n'ouvre pas la fenêtre à lui seul et n'interrompt rien. |
Les 9 règles intégrées
| Règle | Défaut | Ce qu'elle vérifie |
|---|---|---|
blueprint_compilation | error | Les Blueprints compilent sans erreur avant le check-in. |
naming_convention | warning | Préfixes de nommage (style Allar UE5) : T_ textures, M_ matériaux, BP_ blueprints, SM_ static meshes, WBP_ widgets, etc. |
max_texture_size | warning | Taille max des textures : par défaut 4096 × 4096, puissance de 2 requise. |
material_complexity | warning | Complexité des matériaux : par défaut max 256 instructions, 16 échantillons de texture. |
import_settings | warning | Réglages d'import conformes (textures, meshes). |
missing_dependency | error | Aucune dépendance manquante (ignore par défaut le contenu moteur). |
circular_dependency | error | Pas de dépendance circulaire (profondeur de recherche 20 par défaut). |
unreferenced_asset | info | Signale les assets non référencés (exclut cartes et widgets par défaut). |
duplicate_asset | warning | Détecte les assets en double (ignore les .umap par défaut). |
Activer et configurer
1. Ouvrir l'onglet Rules
Dans le panneau d'administration, choisissez d'abord le dépôt dans le sélecteur de la rangée PROJECT, puis ouvrez l'onglet Rules de cette même rangée : les règles portent sur un seul dépôt à la fois. Les 9 règles s'affichent, une par ligne, avec un chevron pour déplier, un interrupteur, le nom de la règle, sa sévérité et sa description.
2. Activer la règle
Cliquez sur l'interrupteur à gauche du nom. La sauvegarde est immédiate : il n'y a pas de bouton d'enregistrement pour cette action. C'est l'étape qu'on oublie : sur un dépôt neuf, tous les interrupteurs sont éteints, et une règle éteinte ne dit rien à personne, quelle que soit sa sévérité.
3. Choisir la sévérité
Le menu déroulant à droite de la ligne propose Error, Warning et
Info, avec sauvegarde immédiate là aussi. Seul error bloque réellement le check-in :
voir Sévérités.
4. Ajuster les paramètres (JSON)
Cliquez sur le chevron en début de ligne pour déplier la règle. Le champ
Configuration (JSON) contient ses paramètres ; modifiez-les, puis cliquez sur
Save Config. Un JSON invalide bloque la sauvegarde et affiche le détail de l'erreur sous le
champ (Invalid JSON: ...), la règle reste alors dans son état précédent.
Exemple : abaisser max_texture_size à 2048 pour un projet mobile, ou passer
naming_convention en error pour l'imposer strictement.
Export, import, reset
Trois boutons occupent la barre d'outils, en haut à droite de l'onglet Rules :
- Export : télécharge un fichier
rules.jsoncontenant l'état de toutes les règles (activation, sévérité, config). - Import : recharge un
rules.jsonet applique chaque entrée aux règles correspondantes (les clés inconnues sont ignorées). - Reset to Defaults : remet toutes les règles à leurs valeurs par défaut. Les configurations personnalisées sont perdues (confirmation demandée).
L'export / import sert à répliquer une politique de validation d'un dépôt à l'autre, ou à la versionner hors ligne.
rules.json dans le dépôt
.uversion/rules.json committé n'est appliqué à la politique du dépôt que si l'auteur du
commit détient l'autorisation nommée manage_rules (une « capacité », c'est-à-dire une autorisation
attachée à un rôle et valable sur tout le serveur). Sinon le fichier est stocké mais les règles ne changent pas.
C'est une garde : un contributeur avec droit d'écriture sur ce chemin ne peut pas désactiver la validation en
committant un fichier.
Pièges courants
Un check-in est bloqué dans l'éditeur Unreal
Une règle en error a échoué : la fenêtre de validation liste les constats et le bouton
Proceed reste grisé. Corrigez l'asset, ou (si la règle est trop stricte pour votre contexte)
abaissez sa sévérité en warning, ou désactivez-la.
Reset efface mes réglages
Reset to Defaults est destructif pour vos configurations personnalisées. Faites un Export avant si vous voulez pouvoir revenir en arrière.
Une règle semble ne rien faire
Trois vérifications, dans cet ordre :
- Par où la personne soumet-elle ? Depuis le client desktop, la ligne de commande ou le plugin Rider, aucune règle n'est évaluée (voir Où les règles s'appliquent vraiment).
- La règle est-elle activée ? Sur un dépôt neuf, elles sont toutes désactivées au départ.
- Sa sévérité est-elle la bonne ? Seul
errorbloque le check-in ;infon'interrompt rien.