uVersion
Français
Télécharger →

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

La validation est faite par l'éditeur Unreal, pas par le serveur Les règles configurées ici sont téléchargées et exécutées par le plugin uVersion pour Unreal Engine, au moment où vous soumettez depuis l'éditeur. Le serveur, lui, ne consulte jamais les règles quand il enregistre un commit. Conséquence à connaître avant de compter dessus : un envoi effectué depuis le client desktop, depuis la ligne de commande (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.

Semis automatique, mais toutes désactivées Les 9 règles par défaut sont créées automatiquement à la création d'un dépôt (et, à défaut, la première fois qu'on ouvre l'onglet Rules d'un dépôt qui n'en a aucune). Elles sont semées désactivées : sur un dépôt neuf, aucune validation ne tourne tant qu'un administrateur n'a pas activé les règles qu'il veut. Vous partez d'un jeu complet, à activer et à ajuster.

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
errorBloque 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.
warningN'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.
infoPurement informatif : n'ouvre pas la fenêtre à lui seul et n'interrompt rien.
La fenetre Pre-Checkin Validation dans l'editeur Unreal, avec la liste des constats et le bouton Proceed.

Les 9 règles intégrées

RègleDéfautCe qu'elle vérifie
blueprint_compilationerrorLes Blueprints compilent sans erreur avant le check-in.
naming_conventionwarningPréfixes de nommage (style Allar UE5) : T_ textures, M_ matériaux, BP_ blueprints, SM_ static meshes, WBP_ widgets, etc.
max_texture_sizewarningTaille max des textures : par défaut 4096 × 4096, puissance de 2 requise.
material_complexitywarningComplexité des matériaux : par défaut max 256 instructions, 16 échantillons de texture.
import_settingswarningRéglages d'import conformes (textures, meshes).
missing_dependencyerrorAucune dépendance manquante (ignore par défaut le contenu moteur).
circular_dependencyerrorPas de dépendance circulaire (profondeur de recherche 20 par défaut).
unreferenced_assetinfoSignale les assets non référencés (exclut cartes et widgets par défaut).
duplicate_assetwarningDé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.

La liste des 9 regles de validation : sur chaque ligne le chevron, l interrupteur d activation, le nom de la regle, sa severite et le menu deroulant Error / Warning / Info a droite.

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.

Une regle depliee sur son editeur Configuration (JSON) : le texte des parametres dans la zone de saisie et le bouton Save Config en bas a droite.

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.json contenant l'état de toutes les règles (activation, sévérité, config).
  • Import : recharge un rules.json et 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

Le rules.json committé n'est pas appliqué par n'importe qui Un fichier .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 :

  1. 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).
  2. La règle est-elle activée ? Sur un dépôt neuf, elles sont toutes désactivées au départ.
  3. Sa sévérité est-elle la bonne ? Seul error bloque le check-in ; info n'interrompt rien.