Accueil logo MakeYourGame gachetteG gachetteD paddleG paddleH paddleD paddleB buttonG buttonH buttonD buttonB

Les attributs dans Unity

Documentation

Vous en avez assez de ne plus vous y retrouver avec vos variables dans l'éditeur Unity ?

6 min Débutant

A quoi sert cette variable ?

Découvrez les attributs Unity et gagnez en lisibilité sur vos composants.

Prérequis : utilisation des variables

Niveau : débutant

 

Organisez vos composants

Comme vous le savez surement, toutes les variables déclarées en "public" dans un script, seront visibles une fois dans l'éditeur de Unity. Ainsi en utilisant beaucoup de variables, on peut vite se retrouver perdu...Il faut donc organiser ses variables afin d'avoir plus de lisibilité sur les composants dans l'éditeur.

Dans ce tutoriel nous allons voir comment utiliser les attributs Unity suivants : HeaderAttribute, SpaceAttribute et TooltipAttribute.

Prenons un script initial en C# qui sera notre base de départ.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class HowAttribute : Monobehavior{
    public int health = 2;
    public Text healthUI;
    public string pseudo;
    public Button newSkinUI;
}

Si on assigne ce script à un GameObject et que l'on regarde l'Inspector dans l'éditeur, on voit bien les variables du script.

On remarque qu'elles sont dans l'ordre (haut vers le bas) de leur déclaration dans le script C#.

https://makeyourgame.fun/uploads/2017/07/Capture-d%252525E2%25252580%25252599e%252525CC%25252581cran-2017-11-22-a%252525CC%25252580-16.59.33.png

Comme on peut le voir tout est mélangé, mais cela on peut le corriger en changeant l'ordre de déclaration des variables dans le script C#.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class HowAttribute : Monobehavior{
    public int health = 2;
    public string pseudo;

    public Text healthUI;
    public Button newSkinUI;
}

https://makeyourvideogame.com/wp-content/uploads/2017/07/Capture-d%252525E2%25252580%25252599e%252525CC%25252581cran-2017-11-22-a%252525CC%25252580-17.04.31.png

A ce stade c'est un peu mieux, mais on a ici aucun information utile, ou d'aide au paramétrage. Voyons comment mieux faire à l'aide du HeaderAttribute et du SpaceAttribute.

Plongeons un peu dans la documentation Unity.

 

HeaderAtttribute

class de UnityEngine/Hérite de: PropertyAttribute

Description

Ajouter cet attribut pour indiquer un entête au dessus des variables de votre choix, dans l'Inspector de Unity.

Cet entête utilise un  DecoratorDrawer.

[Header("Le titre de votre choix")]
public int health = 0;

 

SpaceAttribute

class de UnityEngine/Hérite de: PropertyAttribute

Description

Utiliser cet attribut pour ajouter de l'espace vertical, entre vos variables dans l'Inspector de Unity.

Cet attribut utilise un  DecoratorDrawer.

public int health = 0;
public int maxHealth = 100;
[Space(10)]  // on crée ici un espace vertical de 10px
public int shield = 0;
public int maxShield = 0;

 

Mise en application

Ici nous allons mettre directement en application la théorie en ajoutant dans notre premier script, de l'espace entre les variable UI et les autres. Puis nous ajoutons un titre pour chaque section.

Voici le code résultant.

public class HowAttribute : Monobehavior{
   [Header("Variables vitales du player")]
   public int health = 2;
   public string pseudo;

   [Space(20)]
   [Header("Variables liées à l'IHM")]
   public Text healthUI;
   public Button newSkinUI;
}

https://makeyourvideogame.com/wp-content/uploads/2017/07/Capture-d%252525E2%25252580%25252599e%252525CC%25252581cran-2017-11-22-a%252525CC%25252580-17.29.42.png

C'est tout de suite mieux non ?

Mais on peut ajouter une description plus complète à l'aide des tooltips ...

 

TooltipAttribute

class de UnityEngine/Hérite de: PropertyAttribute

Description

Cet attribut permet d'indiquer une information lorsque la souris survole la variable dans l'Inspector.

Cet attribut utilise un  DecoratorDrawer.

[Tooltip("Santé comprise entre 1 et 100")]
  public int health = 0;

Essayez donc maintenant de placer des informations utiles et regardez le résultat dans l'éditeur.

https://makeyourvideogame.com/wp-content/uploads/2017/07/Capture-d%252525E2%25252580%25252599e%252525CC%25252581cran-2017-11-22-a%252525CC%25252580-18.04.09.png

 

Cette première introduction sur les attributs de l'éditeur Unity touche à sa fin.

Vous savez maintenant comment améliorer la lecture de vos composants.

 

Pour aller encore plus loin:

 

Vues: 189

Connectez-vous pour applaudir applause logo 0 claps

Validation du Tutoriel

Veuillez vous connecter ou créer un compte pour pouvoir valider ce tutoriel et ainsi gagner stardust et XP !

×