---
# System prepended metadata

title: '**Wiki : Modeling Checker** Tool Modeling'
tags: [Sanity Check, Modeling, TD, Notice]

---

[:arrow_left:](/WQum2tYYSXGaBjnU2wMxzQ) To Pirata Dashboard
[:arrow_left:](/FQqugZ49RLOLDOdm0Z1GlQ?both) To TD Dashboard
[:arrow_left:](/HBtOe6opROO2deKL9wqT7w) To Modeling Dashboard

# **Wiki : Modeling Checker** Tool Modeling

###### tags: `Modeling` `TD` `Sanity Check` `Notice`

:arrow_left: [Lien vers Sanity Check modeling](https://hackmd.io/PhTIibNzSu-U8Ky3oQYP2w?view)

### Outil de vérification de scène modeling, et de clean automatique afin de passer le validate modeling  
- la propreté de la scène
- les nomenclatures
- l'intégrité des éléments : 
    - groupes
    - meshes
    - shapes
    - etc.  


#### Accessible depuis le shelf => mdl_checker ou depuis le sanity check si ce dernier ne passe pas

![](https://i.imgur.com/VFkzD1i.png)
OU 
![](https://i.imgur.com/iTXwQ4K.png)



:::danger

### AVANT DE LANCER L'OUTIL, IL FAUT SAUVEGARDER LA SCENE POUR QUE L'OUTIL SACHE QUEL CONTEXTE APPLIQUER.
:::

---

:::spoiler Script Dependencies:
```python
tk-framework-millimages\hooks\tk-multi-publish2\tk-maya\PirataEtCapitano02\publish_session_modeling.py
calls
millimages.maya.libraries.reads et checks
millimages.maya.tools.PirataEtCapitano.modeling.mdl_checker
```
:::
---

### Deux variations de l'outil existent: 
- Master "Asset Lib" => le bandeau "ALL" est **blanc**
- Asset "normal" => le bandeau "ALL" est **bleu**

*Voir tout en bas la différence entre les deux.* :arrow_double_down: 

![](https://i.imgur.com/WGNGKxn.png) **NORMAL= BLANC**

![](https://i.imgur.com/BrPcyVe.png) **MASTER=BLEU**

###  **Faire Run all functions**.
Cela permet de lancer toutes les opération du sanity check afin de comprendre où est l'erreur et de la corriger. 
*Lorsque l'outil est lancé, run all functions va automatiquement run.*

---
### 1. All functions
Lance tous les checks disponibles.
Une fois le check effectué, les boutons passent en vert ou en rouge suivant leur résultat.

#### Si le bouton est vert, l'action passe le validate. Si elle est rouge, il faut lancer le bouton "fix it" pour corrier le problème.

#### Si le bouton "fix it" est grisé, l'action n'est pas gérée en script.

**Exemple** : 'many top nodes' indique qu'il y a plusieurs top nodes et donc il faut choisir ceux à supprimer qui sont en trop.

---
### 2. Scene

- RedShift Load : vérifie que Redshift n'est pas loadé ni utilisé en moteur de rendu actuel.
- Time unit : vérifie que la scène soit en PAL 25 FPS.
- Selection sets : vérifie que la scène n'a pas de set de sélections.
- Authorized nodes : les noeuds autorisés sont : les noeuds par défaut, les shapes, les transform. Tout le reste est exclu.
- Unknown nodes: vérifie les nodes inconnus.
- Displays layers : vérifie que la scène n'ait pas de display layers.
- Non defaults mtl : pas de matériaux autre que le lambert
- References : pas de références.
- Namespaces : pas de namespaces.

:::info
**NB:** Le bouton **fix it de redshift load est incomplet** pour le moment. Il unload redshift mais ne clean pas les atributs redshift présents dans la scène. Il faut pour cela passer dans le crudfile (indisponible pour le moment) et faire un export ABC.
:::
---
### 3. Top node

- Many top nodes : seulement un top node autorisé.
- Nomenclature : Le top node doit être nomenclaturé comme le nom de la scène
- Pivot value : le pivot doit être au centre du monde
- Freeze transform : pas de valeurs sur le groupe

### 4. Groups

- Group nomenclature : les groupes doivent être nomenclaturés en fonction du contenu par rapport à leur symétrie (voir [nomenclature](https://hackmd.io/xK1xGUQXTKqd-0bKXy3apQ?view) )
- Group freeze transform : pas de valeurs sur les grps
- Group visibility : pas de groupe cachés

### 5. Meshes

- Mesh nomenclature : les meshes doivent être nomenclaturés en fonction de leur symétrie (voir [nomenclature](https://hackmd.io/xK1xGUQXTKqd-0bKXy3apQ?view) )
- Mesh freeze transform : pas de valeurs sur les meshes
- Mesh wrong render stats : les meshes doivent avoir des render stats par défaut.
- Mesh cleanup : check si le mesh passe au cleanup
- Mesh ngones: check le maillage
- Mesh shape nomenclature : Vérifie que la shape est bien le même nom que son transform
- Mesh History : pas d'history
- Mesh visibility : pas de mesh hidden
- Mesh instance : pas d'instance
- Mesh polyColor : pas de polycolor
- Mesh geo issues :pas de mesh qui ne contienne qu'une face
:::info
**Toutes les opérations sur l'intégrité de la modélisation ne seront pas faite automatiquement.** (correction de mesh au cleanup, correction des ngones, et des problèmes de géo.)
:::

### 99. Spécificités de l'outil master

- Dans la catégorie "scene" :  pas de check que des selection sets restent puisqu'on est sensé en avoir
- Dans groups: check sur les subassets: check via shotgun que les subassets soient présent dans le top node. Les sets de sélection sont également examinés pour correspondre aux variabtions présentes.
----
*Pour tout report de bug: s.chauvet@millimages.com*