Utiliser Visual Studio Tools pour UnityUse Visual Studio Tools for Unity

Dans cette section, vous allez apprendre à utiliser les fonctionnalités d’intégration et de productivité de Visual Studio Tools pour Unity, ainsi qu’à utiliser le débogueur Visual Studio pour le développement Unity.In this section, you'll learn how to use Visual Studio Tools for Unity's integration and productivity features, and how to use the Visual Studio debugger for Unity development.

Ouvrir des scripts Unity dans Visual StudioOpen Unity scripts in Visual Studio

Une fois Visual Studio défini comme éditeur de scripts externe pour Unity, le fait d’ouvrir un script à partir de l’éditeur Unity lance automatiquement Visual Studio (ou bascule sur la fenêtre ouverte) sur le script en question.Once Visual Studio is set as the external script editor for Unity, opening any script from the Unity editor will automatically launch or switch to Visual Studio with the chosen script open. Double-cliquez sur l’un des scripts de votre projet Unity.Just double click a script in your Unity project.

Vous pouvez aussi lancer Visual Studio sans ouvrir de script dans l’éditeur de code source, en sélectionnant Ouvrir un projet C# dans le menu Ressources de Unity.Alternatively, you can open Visual Studio with no script open in the source editor by selecting Open C# Project from the Assets menu in Unity.

Ouvrir un projet C#

Accès à la documentation UnityUnity documentation access

Vous pouvez accéder rapidement à la documentation sur les scripts Unity à partir de Visual Studio.You can access the Unity scripting documentation quickly from Visual Studio. Si Visual Studio Tools pour Unity ne trouve pas la documentation de l'API en local, il la recherche en ligne.If Visual Studio Tools for Unity doesn't find the API documentation locally, it will try to find it online.

  • Dans Visual Studio, placez le curseur sur l’API Unity pour laquelle vous souhaitez obtenir des informations ou sélectionnez-la, puis appuyez sur Ctrl+Alt+M, Ctrl+H.In Visual Studio, highlight or place the cursor over the Unity API you want to learn about, then press Ctrl+Alt+M, Ctrl+H

IntelliSense pour les messages de l’API UnityIntellisense for Unity API Messages

La saisie semi-automatique de code IntelliSense facilite l’implémentation de messages de l’API Unity dans des scripts MonoBehaviour ; par ailleurs, elle aide à découvrir l’API Unity.Intellisense code-completion makes it easy to implement Unity API messages in MonoBehaviour scripts, and assists with learning the Unity API. Pour utiliser IntelliSense pour les messages Unity :To use IntelliSense for Unity messages:

  1. Placez le curseur sur une nouvelle ligne dans le corps d’une classe qui dérive de MonoBehaviour.Place the cursor on a new line inside the body of a class that derives from MonoBehaviour.

  2. Commencez à taper le nom d’un message Unity, par exemple, OnTriggerEnter.Begin typing the name of a Unity message, such as OnTriggerEnter.

  3. Une fois les lettres « ontri » tapées, une liste de suggestions IntelliSense apparaît.Once the letters "ontri" have been typed, a list of IntelliSense suggestions appears.

    Using IntelliSense

  4. Vous pouvez changer la sélection dans la liste de trois façons :The selection on the list can be changed in three ways:

    • Avec les flèches Haut et Bas.With the Up and Down arrow keys.

    • En cliquant avec la souris sur l’élément souhaité.By clicking with the mouse on the desired item.

    • En continuant de taper le nom de l’élément souhaité.By continuing to type the name of the desired item.

  5. IntelliSense peut insérer le message Unity sélectionné, y compris tous les paramètres nécessaires :IntelliSense can insert the selected Unity message, including any necessary parameters:

    • En appuyant sur Tab.By pressing Tab.

    • En appuyant sur ENTRÉE.By pressing Enter.

    • En double-cliquant sur l’élément sélectionné.By double-clicking the selected item.

    Insérer un message Unity à partir d’IntelliSense

Assistant de script MonoBehavior d'UnityUnity MonoBehavior scripting wizard

Vous pouvez utiliser l’Assistant MonoBehavior pour afficher la liste de toutes les méthodes de l’API Unity et implémenter rapidement une définition vide.You can use the MonoBehavior wizard to view a list of all the Unity API methods and quickly implement an empty definition. Cette fonctionnalité, en particulier avec l’option Générer des commentaires de méthode activée, est utile pour découvrir ce qui est disponible dans l’API Unity.This feature, particularly with the Generate method comments option enabled, is helpful if you are still learning what's available in the Unity API.

Pour créer des définitions de méthode MonoBehavior vides avec l’Assistant MonoBehavior :To create empty MonoBehavior method definitions with the MonoBehavior wizard:

  1. Dans Visual Studio, placez le curseur à l’endroit où vous souhaitez insérer les méthodes, puis appuyez sur Ctrl+Maj+M pour lancer l’Assistant MonoBehavior.In Visual Studio, position the cursor where you want the methods to be inserted, then press Ctrl+Shift+M to launch the MonoBehavior wizard.

  2. Dans la fenêtre Créer des méthodes de script, cochez la case à côté du nom de chaque méthode que vous voulez ajouter.In the Create script methods window, mark the checkbox next to the name of each method you want to add.

  3. Utilisez la liste déroulante Version du framework pour sélectionner la version souhaitée.Use the Framework version dropdown to select your desired version.

  4. Par défaut, les méthodes sont insérées à l’endroit où se trouve le curseur.By default, the methods are inserted at the position of the cursor. Vous pouvez également les placer après n’importe quelle méthode déjà implémentée dans votre classe en remplaçant la valeur de la liste déroulante Point d’insertion par l’emplacement souhaité.Alternatively, you can choose to insert them after any method that's already implemented in your class by changing the value of the Insertion point dropdown to the location you want.

  5. Si vous voulez que l’Assistant génère des commentaires pour les méthodes que vous avez sélectionnées, cochez la case Générer des commentaires de méthode.If you want the wizard to generate comments for the methods you selected, mark the Generate method comments checkbox. Ces commentaires ont pour but de vous aider à comprendre à quel moment la méthode est appelée et quelles sont ses responsabilités générales.These comments are meant to help you understand when the method is called and what its general responsibilities are.

  6. Cliquez sur le bouton OK pour quitter l’Assistant et insérer les méthodes dans votre code.Choose the OK button to exit the wizard and insert the methods into your code.

    La boîte de dialogue de l’Assistant Monobehavior.The monobehavior wizard dialog.

Explorateur de projets de UnityUnity Project Explorer

La fenêtre Explorateur de projet Unity.The Unity Project Explorer window.

L’Explorateur de projets Unity affiche tous les fichiers projet et répertoires Unity de la même manière que l’éditeur Unity.The Unity Project Explorer shows all of your Unity project files and directories in the same way that the Unity Editor does. Ce n’est pas la même chose que de parcourir les scripts Unity avec l’Explorateur de solutions normal de Visual Studio, qui les organise en projets et une solution générée par Visual Studio.This is different than navigating your Unity scripts with the normal Visual Studio Solution Explorer, which organizes them into projects and a solution generated by Visual Studio.

  • Dans le menu principal de Visual Studio, choisissez Affichage > Explorateur de projets Unity.On the main Visual Studio menu, choose View > Unity Project Explorer. Raccourci clavier : Alt+Maj+EKeyboard shortcut: Alt+Shift+E

    Afficher la fenêtre Explorateur de projet Unity.View the Unity Project Explorer window.

Liste d'erreurs UnityUnity Error List

Vous pouvez afficher les messages à partir de la console Unity à l'intérieur de Visual Studio lorsqu'il est connecté à une instance Unity.You can view messages from the Unity console inside Visual Studio when it's connected to a Unity instance. Les erreurs et les avertissements Unity sont inclus.This includes errors and warnings from Unity. Les messages sont affichés dans la fenêtre Liste d’erreurs de Visual Studio ; les messages d’erreur Unity s’affichent sous l’onglet Erreurs, les messages d’avertissement sous l’onglet Avertissements et les autres messages, comme ceux envoyés à l’aide de l’API Unity Debug.Log, sous l’onglet Messages.The messages are displayed in Visual Studio's Error List window; error messages from Unity are displayed on the Errors tab, warning messages on the Warnings tab, and other messages—for example, messages sent by using the Debug.Log Unity API—are displayed on the Messages tab.

Votre projet Unity doit être connecté à Visual Studio (cf. la section Débogage Unity) pour que vous puissiez voir les messages.In order to see the messages, your Unity project must be connected to Visual Studio as described in the Unity debugging section.

Si vous ne voulez pas voir les erreurs, avertissements et messages Unity dans la fenêtre Liste d’erreurs de Visual Studio, vous pouvez les désactiver dans le menu Configuration.If you don't want to see errors, warnings, and messages from Unity in Visual Studio's Error List window, you can disable them in the Configuration menu.

Débogage UnityUnity debugging

Visual Studio Tools pour Unity vous permet de déboguer les scripts de l'éditeur et de jeu de votre projet Unity à l'aide du puissant débogueur de Visual Studio.Visual Studio Tools for Unity lets you debug both editor and game scripts for your Unity project using Visual Studio's powerful debugger.

Déboguer dans l’éditeur UnityDebug in the Unity editor

Démarrer le débogageStart debugging

  1. Connectez Visual Studio à Unity en cliquant sur le bouton Lire intitulé Attacher à Unity, ou utilisez le raccourci clavier F5.Connect Visual Studio to Unity by clicking the Play button labeled Attach to Unity, or use the keyboard shortcut F5.

    Cliquer sur Lire dans Visual Studio

  2. Basculez sur Unity et cliquez sur le bouton Lire pour exécuter le jeu dans l’éditeur.Switch to Unity and click the Play button to run the game in the editor.

    Cliquer sur Lire dans Unity

  3. Quand le jeu s’exécute dans l’éditeur Unity, tout en étant connecté à Visual Studio, les points d’arrêt rencontrés suspendent l’exécution du jeu et affichent la ligne de code concernée dans Visual Studio.When the game is running in the Unity editor while connected to Visual Studio, any breakpoints encountered will pause execution of the game and bring up the line of code where the game hit the breakpoint in Visual Studio.

Arrêter le débogageStop debugging

  • Cliquez sur le bouton Arrêter dans Visual Studio, ou utilisez le raccourci clavier Maj+F5.Click the Stop button in Visual Studio, or use the keyboard shortcut Shift + F5.

    Cliquer sur Arrêter dans Visual Studio

Pour plus d’informations sur le débogage dans Visual Studio, voir Premier aperçu du débogueur Visual Studio.To learn more about debugging in Visual Studio, see First look at the Visual Studio Debugger.

Attacher à Unity et lireAttach to Unity and Play

Pour plus de commodité, vous pouvez remplacer le bouton Attacher à Unity par le mode Attacher à Unity et lire.For added convenience, you can change the Attach to Unity button to Attach to Unity and Play mode.

  1. Cliquez sur la petite flèche vers le bas à côté du bouton Attacher à Unity.Click the small down arrow next to the Attach to Unity button.

  2. Sélectionnez Attacher à Unity et lire dans le menu déroulant.Select Attach to Unity and Play from the dropdown menu.

    Attacher et lire

Le bouton Lire est à présent intitulé Attacher à Unity et lire.The play button becomes labeled Attach to Unity and Play. Ce bouton et le raccourci clavier F5 ont maintenant pour effet de basculer automatiquement vers l’éditeur Unity et d’exécuter le jeu dans l’éditeur, en plus d’attacher le débogueur Visual Studio.Clicking this button or using the keyboard shortcut F5 now automatically switches to the Unity editor and runs the game in the editor, in addition to attaching the Visual Studio debugger.

Le bouton Arrêter dans Visual Studio et le raccourci clavier Maj+F5 ont maintenant pour effet d’arrêter automatiquement le jeu dans l’éditeur Unity.Clicking the Stop button in Visual Studio or using the keyboard shortcut Shift+F5 will automatically stop the game in the Unity editor.

Déboguer les builds des lecteurs UnityDebug Unity player builds

Il est possible de déboguer les builds de développement de différents lecteurs Unity avec Visual Studio.You can debug development builds of various Unity players with Visual Studio.

Activer le débogage de script dans un lecteur UnityEnable script debugging in a Unity player

  1. Dans Unity, ouvrez les paramètres de build en sélectionnant Fichier > Paramètres de build.In Unity, open the Build Settings by selecting File > Build Settings.

  2. Dans la fenêtre Paramètres de build, cochez les cases Build de développement et Débogage de script.In the Build Settings window, mark the Development Build and Script Debugging checkboxes.

    Configurez les paramètres de build Unity pour le débogage.Configure the Unity build settings for debugging.

Sélectionner une instance de Unity pour y attacher le débogueurSelect a Unity instance to attach the debugger to

  • Dans le menu principal de Visual Studio, choisissez Déboguer > Attacher le débogueur Unity.In Visual Studio, on the main menu, choose Debug > Attach Unity Debugger.

    Attacher le débogueur Unity.Attach the debugger of Unity.

    La boîte de dialogue Sélectionner l’instance Unity affiche des informations sur chaque instance Unity à laquelle vous pouvez vous connecter.The Select Unity Instance dialog displays some information about each Unity instance that you can connect to.

    Choisissez une instance de Unity à laquelle vous connecter.Choose an instance of Unity to connect to.

    Projet Nom du projet Unity qui s’exécute dans cette instance Unity.Project The name of the Unity project that's running in this instance of Unity.

    Machine Nom de l’ordinateur ou de l’appareil sur lequel cette instance Unity est en cours d’exécution.Machine The name of the computer or device that this instance of Unity is running on.

    Type Éditeur si cette instance Unity s’exécute dans l’éditeur Unity ; Lecteur si c’est un lecteur autonome.Type Editor if this instance of Unity is running as part of the Unity Editor; Player if this instance of Unity is a stand-alone player.

    Port Numéro de port du socket UDP sur lequel communique cette instance Unity.Port The port number of the UDP socket that this instance of Unity is communicating over.

Important

Étant donné que Visual Studio Tools pour Unity et l'instance Unity communiquent via un socket réseau UDP, votre pare-feu peut l'interroger.Because Visual Studio Tools for Unity and the Unity instance are communicating over a UDP network socket, your firewall might ask about it. Dans ce cas, vous devez autoriser la connexion de telle sorte que VSTU et Unity puissent communiquer.If this happens, you'll have to authorize the connection so that VSTU and Unity can communicate.

Déboguer une DLL dans votre projet UnityDebug a DLL in your Unity project

De nombreux développeurs Unity écrivent des composants de code en tant que DLL externes afin que les fonctionnalités qu'ils développent puissent être facilement partagées avec d'autres projets.Many Unity developers are writing code components as external DLLs so that the functionality they develop can be easily shared with other projects. Visual Studio Tools pour Unity facilite le débogage du code dans ces DLL, sans heurt avec tout autre code de votre projet Unity.Visual Studio Tools for Unity makes it easy to debug code in these DLLs seamlessly with other code in your Unity project.

Note

À ce stade, Visual Studio Tools pour Unity prend uniquement en charge les DLL managées.At this time, Visual Studio Tools for Unity only supports managed DLLs. Il ne gère pas le débogage des DLL de code natif, telles que celles écrites en C++.It does not support debugging of native code DLLs, such as those written in C++.

Notez que le scénario décrit ici suppose que vous disposiez du code source, autrement dit, que vous développiez ou réutilisez votre propre code tiers, ou que vous ayez le code source d'une bibliothèque tierce et que vous prévoyiez de le déployer dans votre projet Unity en tant que DLL.Note that the scenario described here assumes that you have the source code—that is, you are developing or re-using your own first-party code, or you have the source code to a third-party library, and plan to deploy it in your Unity project as a DLL. Ce scénario ne décrit pas le débogage d'une DLL pour laquelle vous n'avez pas le code source.This scenario does not describe debugging a DLL for which you do not have the source code.

Pour déboguer un projet DLL managée utilisé dans votre projet UnityTo debug a managed DLL project used in your Unity project

  1. Ajoutez votre projet DLL existant à la solution Visual Studio générée par Visual Studio Tools pour Unity.Add your existing DLL project to the Visual Studio solution generated by Visual Studio Tools for Unity. Moins couramment, vous pouvez aussi démarrer un nouveau projet de DLL managée pour qu'il contienne les composants de code de votre projet Unity ; si tel est le cas, vous pouvez à la place ajouter un nouveau projet DLL managée à la solution Visual Studio.Less commonly, you might be starting a new managed DLL project to contain code components in your Unity project; if that's the case, you can add a new managed DLL project to the Visual Studio solution instead. Pour plus d’informations sur l’ajout d’un projet nouveau ou existant à une solution, consultez Comment : ajouter des projets à une solution.For more information on adding a new or existing project to a solution, see How to: Add Projects to a Solution.

    Ajoutez votre projet DLL existant à la solution.Add your existing DLL project to the solution.

    Dans les deux cas, Visual Studio Tools pour Unity conserve la référence de projet, même s'il doit régénérer les fichiers projet et solution ; par conséquent, vous ne devez effectuer ces étapes qu'une seule fois.In either case, Visual Studio Tools for Unity maintains the project reference, even if it has to regenerate the project and solution files again, so you only need to perform these steps once.

  2. Référencez le bon profil du framework Unity dans le projet DLL.Reference the correct Unity framework profile in the DLL project. Dans Visual Studio, dans les propriétés du projet DLL, définissez la propriété Framework cible avec la version du Framework Unity que vous utilisez.In Visual Studio, in the DLL project's properties, set the Target framework property to the Unity framework version you're using. Il s'agit de la bibliothèque des classes de base Unity qui correspond à la compatibilité d'API ciblée par votre projet, comme les bibliothèques de classes de base Unity complètes, micro ou web.This is the Unity Base Class Library that matches the API compatibility that your project targets, such as the Unity full, micro, or web base class libraries. De cette façon, votre DLL ne peut pas appeler les méthodes du framework qui existent dans d'autres frameworks ou niveaux de compatibilité, mais qui n'existent peut-être pas dans la version du framework Unity que vous utilisez.This prevents your DLL from calling framework methods that exist in other frameworks or compatibility levels, but which might not exist in the Unity framework version you're using.

    Définissez Unity comme framework cible de la DLL.Set the DLL's target framework to Unity framework.

  3. Copiez la DLL dans le dossier Composants de votre projet Unity.Copy the DLL to your Unity project's Asset folder. Dans Unity, les composants désignent les fichiers regroupés et déployés au même titre que votre application Unity afin de pouvoir être chargés au moment de l'exécution.In Unity, assets are files that are packaged and deployed together with your Unity app so that they can be loaded at run-time. Comme les DLL sont liées à l'exécution, elles doivent être déployées en tant que composants.Since DLLs are linked at runtime, DLLs must be deployed as assets. Pour que la DLL soit déployée comme composant, l'éditeur Unity requiert que les DLL soient placées dans le dossier Composants de votre projet Unity.To be deployed as an asset, the Unity Editor requires the DLLs to be put inside the Assets folder in your Unity project. Il existe deux façons de procéder :There are two ways you can do this:

    • Modifier les paramètres de génération de votre projet DLL pour inclure une tâche post-génération qui copie les fichiers DLL et PDB résultants de son dossier de sortie vers le dossier Composants de votre projet Unity.Modify the build settings of your DLL project to include a post-built task that copies the output DLL and PDB files from its output folder to the Assets folder of your Unity project.

    • Modifier les paramètres de génération de votre projet DLL pour définir son dossier de sortie comme dossier Composants de votre projet Unity.Modify the build settings of your DLL project to set its output folder to be the Assets folder of your Unity project. Les fichiers DLL et PDB seront placés dans le dossier Composants.Both DLL and PDB files will be placed in the Assets folder.

      Les fichiers PDB sont nécessaires pour le débogage, car ils contiennent les symboles de débogage de la DLL et mappent le code de la DLL sur la forme de son code source.The PDB files are needed for debugging because they contain the DLL's debugging symbols, and map the DLL code to its source code form. Visual Studio Tools pour Unity utilise les informations à partir de la DLL et des fichiers PDB pour créer un fichier DLL.MDB, qui est le format des symboles de débogage utilisé par le moteur de script Unity.Visual Studio Tools for Unity will use information from the DLL and PDB to create a DLL.MDB file, which is the debug symbol format used by the Unity scripting engine.

  4. Déboguez votre code.Debug your code. Vous pouvez maintenant déboguer le code source de votre DLL ainsi que le code source de votre projet Unity, et utiliser toutes les fonctionnalités de débogage auxquelles vous êtes habitué, telles que les points d'arrêt et le parcours du code pas à pas.You can now debug your DLL source code together with your Unity project's source code, and use all the debugging features you are used to, such as breakpoints and stepping through code.

Raccourcis clavierKeyboard shortcuts

Vous pouvez accéder rapidement aux fonctionnalités des outils Unity pour Visual Studio à l'aide de leurs raccourcis clavier.You can quickly access the Unity Tools for Visual Studio functionality by using their keyboard shortcuts. Voici un résumé des raccourcis disponibles.Here's a summary of the shortcuts that are available.

CommandeCommand RaccourciShortcut Nom de la commande du raccourciShortcut command name
Ouvrir l'Assistant MonoBehaviorOpen the MonoBehavior Wizard Ctrl+Maj+MCtrl+Shift+M EditorContextMenus.CodeWindow.ImplementMonoBehavioursEditorContextMenus.CodeWindow.ImplementMonoBehaviours
Ouvrir l'Explorateur de projets UnityOpen the Unity Project Explorer Alt+Maj+EAlt+Shift+E View.UnityProjectExplorerView.UnityProjectExplorer
Accéder à la documentation UnityAccess Unity documentation Ctrl+Alt+M, Ctrl+HCtrl+Alt+M, Ctrl+H Help.UnityAPIReferenceHelp.UnityAPIReference
Attacher au débogueur Unity (lecteur ou éditeur)Attach to Unity debugger (player or editor) Pas de valeur par défautno default Debug.AttachUnityDebuggerDebug.AttachUnityDebugger

Vous pouvez modifier les combinaisons de touches de raccourci si vous n'aimez pas la valeur par défaut.You can change the shortcut key combinations if you don't like the default. Pour plus d’informations sur la modification des combinaisons par défaut, consultez Identifier et personnaliser les raccourcis clavier dans Visual Studio.For information on how to change it, see Identify and customize keyboard shortcuts in Visual Studio.