--- title: Matériaux et shaders description: Comprendre et gérer les matériaux GS Framework dans Blender. --- import { Aside, Steps, Tabs, TabItem } from '@astrojs/starlight/components'; L'addon gère les matériaux GS Framework à deux niveaux : l'**import** (conversion des fichiers NMM en matériaux Blender) et l'**édition** (configuration des shaders et textures via le panneau GS Edit pour l'export). --- ## Comment les matériaux NMM sont convertis Lors de l'import d'un fichier NMM, l'addon crée un matériau Blender utilisant le shader **Principled BSDF** et configure ses paramètres : | Donnée NMM | Résultat dans Blender | |---|---| | Couleur diffuse | Base Color | | Couleur spéculaire | Specular | | Glossiness | Roughness (inversé : glossiness haute = roughness basse) | | Self-illumination | Emission Color + Strength | | Opacité | Alpha | | Texture diffuse | Connectée à Base Color | | Texture normal | Connectée via un nœud Normal Map | | Texture AO | Multipliée avec Base Color | | Texture metallic | Connectée à Metallic | | Double-sided | Backface culling désactivé | | Shadeless | Matériau en émissif pur | | Alpha blend | Mode blend Alpha activé | Toutes les données originales restent accessibles dans les **propriétés custom** du matériau (préfixe `nmm_`), permettant un export fidèle. --- ## Le panneau GS Edit (Shader Editor) Le panneau de gestion des matériaux se trouve dans la **sidebar du Shader Editor**, onglet **GS Edit**. Voir la [présentation complète du panneau](/interface/shader-panel/). Il permet de : - Associer un **shader NSA** au matériau - Définir les **canaux de texture** et leurs fichiers - **Sauvegarder / charger** ces données dans les propriétés custom du matériau --- ## Canaux de texture disponibles L'addon reconnaît 13 types de canaux de texture : | Canal | Usage | |---|---| | `diffuse` | Couleur de base / albedo | | `normal` | Carte de normales pour le relief | | `specular` | Intensité de la réflexion spéculaire | | `glossiness` | Brillance de la surface | | `roughness` | Rugosité de la surface (inverse de glossiness) | | `opacity` | Transparence | | `reflection` | Réflexion environnementale | | `selfillum` | Auto-illumination / émission | | `light` | Lightmap (éclairage précalculé) | | `ao` | Occlusion ambiante | | `metallic` | Caractère métallique | | `colormask` | Masque de couleur | | `custom` | Canal personnalisé (vous choisissez le nom) | --- ## Assigner un shader et des textures manuellement 1. **Sélectionnez** un objet avec un matériau dans le viewport. 2. **Ouvrez le Shader Editor** (passez un éditeur en mode Shader Editor, ou utilisez le layout Shading). 3. Ouvrez la **sidebar** du Shader Editor (touche `N`) et allez dans l'onglet **GS Edit**. 4. Dans la section **NSA Shader**, cliquez sur **Select NSA Shader** et naviguez jusqu'au fichier `.nsa` souhaité. {/* ![Sélection d'un shader NSA](../../../assets/placeholder-select-nsa.png) */} 5. Dans la section **Texture Channels**, cliquez sur **Add Channel** pour ajouter un canal. 6. Sélectionnez le canal ajouté dans la liste. Dans le détail : - Choisissez le **type** (ex: `diffuse`) - Cliquez sur le bouton de parcours pour sélectionner le **fichier texture** 7. Répétez pour chaque canal nécessaire (normal, specular, etc.). 8. Cliquez sur **Save** pour enregistrer la configuration dans les propriétés du matériau. --- ## Workflow Save / Load **Save** lit la configuration actuelle de la liste des canaux de texture dans le panneau et l'écrit dans les propriétés custom du matériau sous forme d'un dictionnaire JSON (propriété `nmm_textures`). **Quand l'utiliser** : après chaque modification des canaux de texture. **Load** lit les propriétés custom du matériau (`nmm_textures`) et remplit la liste des canaux dans le panneau. **Quand l'utiliser** : - Après avoir ouvert un fichier contenant des matériaux importés - Pour restaurer la configuration après avoir fait des changements non sauvegardés - Pour synchroniser le panneau avec les données stockées --- ## Supprimer les données GS Le bouton **Clear All GS Data** supprime : - La référence au shader NSA (`nmm_shader_path`) - Tous les canaux de texture (`nmm_textures`) Le matériau retrouve un comportement GLTF standard. Cette action est utile si vous voulez exporter le matériau en GLTF pur sans les métadonnées GS Framework. --- ## Formats de texture supportés Le sélecteur de fichiers textures accepte les formats suivants : - **PNG** (.png) - **JPEG** (.jpg, .jpeg) - **TGA** (.tga) - **BMP** (.bmp) - **TIFF** (.tif, .tiff) - **DDS** (.dds) --- ## Bonnes pratiques