# Créer un objet 3D pour GuidiGO : Guidelines (EN)

## 1. Modélisation dans un logiciel 3D (3ds Max)

1. Chaque modèle que vous créez doit avoir une **géométrie propre** : pas de polygones superposés, inversés, etc.\
   Travaillez toujours avec des **quads**, séparez les polygones par *smoothing groups*, et appliquez un **Turbosmooth** (à **collapser** avant l’export en FBX pour Unity).
2. L’**unwrap UV** est recommandé lorsqu’un modèle utilise plusieurs matériaux. Il est également **indispensable** si vous souhaitez ***bake*****&#x20;la lumière** sur une texture diffuse ou créer une **lightmap.**
3. Pour la création de matériaux, utilisez des **matériaux standard Mental Ray** (évitez V-Ray ou Corona).\
   Unity prend en charge les **normal maps** : convertissez donc vos **bump maps** en normal maps à l’aide de Photoshop et d’un plugin de conversion (disponible gratuitement en ligne).
4. Le nombre de polygones recommandé pour une scène destinée à fonctionner sur un appareil type Tango est **inférieur à un million**, mais cela dépend aussi de la taille des textures, de la complexité du code et des animations.
5. Avant l’export en FBX, **collapsez le stack** et convertissez votre modèle en **Editable Mesh**.
6. Unity utilise le **mètre** comme unité. Pensez donc à **configurer vos unités** en mètres dans 3ds Max.

## 2. Animation dans 3ds Max

Les modèles doivent être **exportés en FBX** pour être importés dans Unity.\
Il est possible d’importer directement un fichier `.max` , mais Unity le convertira automatiquement en FBX, ce qui peut provoquer des **bugs** ou des **crashs** du programme.

Le format FBX présente plusieurs **limitations** en matière d’animation, car il ne prend en charge que certains types d’animations provenant de 3ds Max :

* Translation, rotation, échelle
* Animation de squelette (bones)
* Morpher

À l’exception du **Morpher**, les animations issues d’autres modificateurs (comme **Bend**, **FFD**, etc.) **ne sont pas exportées** en FBX.

## 3. Unity

1. **Shaders**:
   1. Si vous utilisez des modèles scannés avec des textures photoréalistes ou baked, utilisez le shader UNLIT dans Unity.\
      Ce shader ne reçoit ni n’émet d’ombres, et donne un très bon rendu si les textures sont bien travaillées.\
      Avantage clé : il évite les bugs d'ombres pendant les animations.
   2. Si vous peignez vos textures manuellement ou si vous n’effectuez pas de baking de lumière, utilisez le shader STANDARD. Ce shader dépend de l’éclairage de la scène et gère les ombres en temps réel, ce qui le rend adapté aux projets avec animations.
2. **Transparence** : Unity présente un bug connu lorsque deux objets semi-transparents se superposent : le moteur gère mal l'ordre de rendu, provoquant des chevauchements visuellement incohérents.\
   Ce problème peut souvent être corrigé par du code ou un ajustement de shader.
3. **La qualité des textures** doit être aussi élevée que possible. 1k est un minimum. Unity compresse automatiquement les textures supérieures à 2K.\
   Si vous souhaitez conserver du 4K, pensez à rétablir manuellement cette résolution dans les paramètres d’import de la texture.
4. **Organisation de la hiérarchie :** Créez toujours un  game object vide, avec un pivot positionné en 000 000 111, et placez votre modèle dans sa hiérarchie.\
   Si vous ne le faites pas, le modèle risque de se retrouver mal positionné ou désancré dans la scène.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://support.senar.io/senar-aide-en-ligne/api-senar/creer-un-objet-3d-pour-guidigo-guidelines-en.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
