---
title: Import NMS Unpacked
description: Importer une scène NMS en fichiers .blend séparés par sous-scène.
---

import { Aside, Steps, Tabs, TabItem } from '@astrojs/starlight/components';

L'import **NMS** est le seul mode d'import de scène de l'addon. Il fonctionne en mode « unpacked » : plutôt que de tout charger dans un seul fichier, il **crée un fichier `.blend` séparé pour chaque sous-scène**, puis les lie ensemble via le système d'assets de Blender.

**Menu** : File → Import → **NMS Scene (.nms)**

{/* ![Boîte de dialogue d'import NMS Unpacked](../../../assets/placeholder-import-unpacked-dialog.png) */}

---

## Concept

Une scène NMS peut contenir des **instances** qui font référence à d'autres fichiers `.nms` (sous-scènes). Par exemple, une scène de ville peut instancier des bâtiments, des véhicules, des arbres — chacun défini dans son propre fichier NMS.

Le mode Unpacked :

1. **Analyse** récursivement toutes les sous-scènes référencées
2. **Crée un fichier `.blend` séparé** pour chaque sous-scène
3. **Lie** les collections de chaque sous-scène dans la scène principale via Blender assets
4. **Préserve** la hiérarchie et les transformations (position, rotation, échelle)

Le résultat est une arborescence de fichiers `.blend` qui reflète la structure du projet d'origine.

---

## Options d'import

### Gestion des fichiers

| Option | Valeurs | Par défaut | Description |
|---|---|---|---|
| **Output Folder** | Chemin de dossier | `""` | Dossier de destination pour les fichiers `.blend` générés. **Obligatoire.** |
| **Project Folder** | Chemin de dossier | `""` | Dossier racine du projet pour la résolution des chemins. Si vide, utilise les préférences. |
| **Existing .blend Action** | USE_EXISTING / OVERRIDE | USE_EXISTING | Comportement quand un fichier `.blend` existe déjà pour une sous-scène. |
| **Import Mode** | OVERRIDE / SKIP | OVERRIDE | Comment la scène principale est traitée. |
| **Hide Collections** | Case à cocher | Désactivé | Masquer les collections importées dans le viewport pour réduire l'encombrement visuel. |

### Options d'import

| Option | Par défaut | Description |
|---|---|---|
| **Scale** | `1.0` | Facteur d'échelle global (0.001 à 1000) |
| **Import Materials** | ✅ | Importer les matériaux référencés |
| **Import Cameras** | ✅ | Importer les caméras de la scène |
| **Import Lights** | ✅ | Importer les lumières de la scène |
| **Import Block Bis Decors** | ✅ | Importe les blocs originaux avec leurs arbres / rochers / props (redirige `bis/` vers `save_bis/`). Ces collections sont toujours masquées dans le viewport. |
| **Import Marks** | ✅ | Importe les *marks* (points de placement) des fichiers `marks.nms`. Crée un parent empty masqué pour les marks de chaque bloc. |
| **Round Rotations** | ❌ | Arrondir les rotations aux angles courants |
| **Rotation Threshold** | `10.0°` | Seuil d'arrondi (visible uniquement si Round Rotations est activé) |

---

## Détail des options clés

### Existing .blend Action

Contrôle ce qui se passe quand un fichier `.blend` de sous-scène existe déjà dans le dossier de sortie.

<Tabs>
<TabItem label="USE_EXISTING (défaut)">

**Réutilise** le fichier `.blend` existant tel quel, sans réimporter la sous-scène. Le fichier existant est simplement lié dans la scène principale.

**Quand l'utiliser** :
- Vous avez déjà importé la scène une première fois et souhaitez mettre à jour uniquement la scène principale
- Les sous-scènes n'ont pas changé depuis le dernier import
- Vous voulez gagner du temps sur un import en évitant de retraiter des sous-scènes identiques

</TabItem>
<TabItem label="OVERRIDE">

**Recréer** le fichier `.blend` en réimportant la sous-scène depuis zéro, même si un fichier existait déjà. L'ancien fichier est écrasé.

**Quand l'utiliser** :
- Les fichiers source `.nms`/`.nmg`/`.nmm` ont été modifiés depuis le dernier import
- Vous voulez un import complètement propre
- Des problèmes ont été corrigés dans les sources et doivent être reflétés

</TabItem>
</Tabs>

### Import Mode

Contrôle comment la **scène principale** (le fichier `.nms` racine que vous avez sélectionné) est traitée.

<Tabs>
<TabItem label="OVERRIDE (défaut)">

La scène principale est **sauvegardée dans son propre fichier `.blend`**, puis ce fichier est **ouvert dans Blender**. Vous quittez le fichier Blender actuel pour ouvrir le nouveau.

**Quand l'utiliser** :
- Vous commencez un nouveau travail à partir de la scène importée
- Vous voulez que le fichier Blender ouvert corresponde exactement à la scène NMS

</TabItem>
<TabItem label="SKIP">

La scène principale est **recréée dans le fichier Blender actuel** sous forme d'une collection. Les sous-scènes sont liées normalement.

Vous **restez dans votre fichier Blender** et la scène importée est ajoutée à côté de votre contenu existant.

**Quand l'utiliser** :
- Vous voulez intégrer la scène NMS dans un fichier Blender déjà existant
- Vous travaillez sur un overlay ou une composition de plusieurs scènes
- Vous ne voulez pas perdre votre session de travail actuelle

</TabItem>
</Tabs>

<Aside type="caution">
En mode **OVERRIDE**, votre fichier Blender actuel sera fermé. Sauvegardez votre travail avant de lancer l'import.
</Aside>

### Round Rotations

Certaines scènes GS Framework contiennent des rotations avec de légères imprécisions numériques (par exemple 89.97° au lieu de 90°). L'option **Round Rotations** arrondit ces valeurs aux angles courants (0°, 90°, 180°, 270°) si elles sont dans le seuil configuré.

Le **Rotation Threshold** (seuil) détermine la tolérance : une rotation à 85° avec un seuil de 10° sera arrondie à 90°. Ce seuil n'apparaît dans les options que si Round Rotations est activé.

### Hide Collections

Utile pour les scènes très lourdes. Masque les collections et instances importées dans le viewport pour éviter que Blender ne rame. Les objets restent présents — ils ne sont simplement pas affichés.

---

## Résultat de l'import

Après l'import, vous obtenez :

- Un **dossier de sortie** contenant un `.blend` par sous-scène, organisé selon la structure du projet d'origine
- Chaque collection de sous-scène est marquée comme **Blender asset**, permettant la réutilisation via l'Asset Browser
- La **scène principale** contient des instances liées vers chaque sous-scène, avec les transformations d'origine préservées
- Les **tracks**, **objets dynamiques** et **physique** sont importés dans chaque sous-scène concernée

---

## Workflow type

<Steps>

1. Vérifiez que le [dossier projet est configuré](/blender/getting-started/configuration/).

2. Allez dans **File → Import → NMS Scene (.nms)**.

3. Sélectionnez votre fichier `.nms` racine.

4. Configurez le **Output Folder** — c'est là que seront créés les fichiers `.blend`.

5. À la première importation, laissez les options par défaut (USE_EXISTING + OVERRIDE).

6. Lancez l'import — l'addon traverse récursivement toutes les sous-scènes.

7. Une fois terminé, le fichier Blender de la scène principale s'ouvre avec toutes les sous-scènes liées.

</Steps>

<Aside type="tip">
Pour les scènes volumineuses, le premier import peut prendre plusieurs minutes. Les imports suivants avec **USE_EXISTING** seront beaucoup plus rapides car seules les sous-scènes modifiées sont réimportées.
</Aside>
