Bonnes pratiques sur l’utilisation d’Unity et de Visual StudioBest practices for working with Unity and Visual Studio

Lorsque vous créez une application de réalité mixte avec Unity, vous devez basculer entre Unity et Visual Studio pour générer et déployer le package d’application sur HoloLens ou sur un casque immersif.When you're creating a mixed reality application with Unity, you need to switch between Unity and Visual Studio to build and deploy the app package to HoloLens or an immersive headset. Par défaut, deux instances de Visual Studio sont nécessaires : une instance pour modifier les scripts Unity et une autre pour le déploiement sur l’appareil et le débogage.By default, two instances of Visual Studio are required - one instance to modify Unity scripts and another to deploy to the device and debug. Les instructions suivantes vous permettent de développer à l’aide d’une instance de Visual Studio unique, en réduisant la fréquence de l’exportation des projets Unity et en améliorant l’expérience de débogage.The following instructions let you develop using a single Visual Studio instance, reducing the frequency of exporting Unity projects and improves the debugging experience.

Amélioration de l’heure des itérationsImproving iteration time

La prise en charge du serveur principal de script .NET dans Unity est dépréciée dans Unity 2018 et supprimée dans Unity 2019 +.Support for .NET scripting back-end in Unity is being deprecated in Unity 2018 and removed in Unity 2019+. Nous vous recommandons donc de basculer vers IL2CPP.so we recommend you switch to IL2CPP. Toutefois, il se peut que vous rencontriez des temps de génération plus longs entre Unity et Visual Studio.However, you may experience longer build times from Unity to Visual Studio. Pour améliorer l’itération plus rapidement, configurez votre environnement pour obtenir les meilleurs résultats de compilation :To improve for faster iteration, set up your environment for best compilation results:

  1. Utilisez la génération incrémentielle en générant votre projet dans le même répertoire à chaque fois, en réutilisant les fichiers prédéfinisUse incremental building by building your project to the same directory every time, reusing the pre-built files there
  2. Désactiver les analyses logicielles anti-programme malveillant pour votre projet & les dossiers de buildDisable anti-malware software scans for your project & build folders
    • Ouvrir la protection contre les menaces contre les Virus & sous votre application Paramètres Windows 10Open Virus & threat protection under your Windows 10 settings app
    • Sélectionnez gérer les paramètres sous virus & les paramètres de protection contre les menacesSelect Manage Settings under Virus & threat protection settings
    • Sélectionnez Ajouter ou supprimer des exclusions sous la section exclusions .Select Add or remove exclusions under the Exclusions section
    • Sélectionnez Ajouter une exclusion , puis sélectionnez le dossier contenant le code de votre projet Unity et les sorties de générationSelect Add an exclusion and select the folder containing your Unity project code and build outputs
  3. Utiliser un SSD pour la générationUse an SSD for building

Pour plus d’informations, consultez optimisation des temps de génération pour IL2CPP .Review Optimizing Build Times for IL2CPP for more info. Examinez également le débogage sur le serveur principal IL2CPP Scripting.Also, review Debugging on IL2CPP Scripting Back-end.

Envisagez d’installer l' extension Visual Studio UnityScriptAnalyzer.Consider installing the UnityScriptAnalyzer Visual Studio extension. Cet outil analyse vos scripts C# Unity pour le code qui peut être écrit de façon plus optimisée.This tool analyzes your Unity C# scripts for code that can be written in a more optimized manner.

Visual Studio Tools pour UnityVisual Studio Tools for Unity

Télécharger outils Visual Studio pour UnityDownload Visual Studio Tools for Unity

Avantages de Outils Visual Studio pour UnityBenefits of Visual Studio Tools for Unity

  • Déboguez Unity en mode de lecture de l’éditeur à partir de Visual Studio en plaçant des points d’arrêt, en évaluant des variables et des expressions complexes.Debug Unity in-editor play mode from Visual Studio by putting breakpoints, evaluating variables and complex expressions.
  • Utilisez l’Explorateur de projets Unity pour rechercher votre script avec exactement la même hiérarchie que celle affichée par Unity.Use the Unity Project Explorer to find your script with the exact same hierarchy that Unity displays.
  • Récupérez la console Unity directement à l’intérieur de Visual Studio.Get the Unity console directly inside Visual Studio.
  • Utilisez les assistants pour créer rapidement des scripts ou y accéder.Use wizards to quickly create or navigate to scripts.

Exposer des variables de classe C# pour faciliter le paramétrageExpose C# class variables for easy tuning

Il existe deux façons d’exposer des variables de classe.There are two ways to expose class variables. La méthode recommandée consiste à ajouter l’attribut [SerializeField] à vos variables privées.The recommended way is to add the [SerializeField] attribute to your private variables. Les champs sérialisés sont accessibles à partir de l’éditeur, mais ne sont pas exposés par programmation.Serialized fields can be accessed from the editor but not programmatically exposed. L’autre option consiste à rendre les variables de classe C# publiques pour les exposer dans l’interface utilisateur de l’éditeur.The other option is to make C# class variables public to expose them in the editor UI.

Les deux approches permettent de modifier facilement les variables tout en lisant dans l’éditeur, ce qui est particulièrement utile pour le paramétrage des propriétés de mécanicien d’interaction.Both approaches make it possible to easily tweak variables while playing in-editor, which is especially useful for tuning interaction mechanic properties.

Régénérer les solutions Visual Studio UWP après une mise à niveau de SDK Windows ou UnityRegenerate UWP Visual Studio solutions after Windows SDK or Unity upgrade

Les solutions Visual Studio UWP archivées dans le contrôle de code source peuvent être obsolètes après la mise à niveau vers un nouveau SDK Windows ou un moteur Unity.UWP Visual Studio solutions checked in to source control can get out-of-date after upgrading to a new Windows SDK or Unity engine. Vous pouvez résoudre les solutions obsolètes après en générant une nouvelle solution UWP à partir d’Unity et en fusionnant les différences dans la solution archivée.You can resolve out-of-date solutions after by building a new UWP solution from Unity and merging differences into the checked-in solution.

Utiliser des ressources au format texte pour faciliter la comparaison des modifications de contenuUse text-format assets for easy comparison of content changes

Le stockage des ressources au format texte facilite l’examen des différences de modification de contenu dans Visual Studio.Storing assets in text format makes it easier to review content change diffs in Visual Studio. Vous pouvez stocker des éléments multimédias au format texte en sélectionnant modifier > paramètres du projet > éditeur et en sélectionnant le mode de sérialisation du texte.You can store assets in text format by selecting Edit > Project Settings > Editor and change Asset Serialization mode to Force Text. Toutefois, la fusion de modifications de fichiers de ressources texte est sujette aux erreurs et n’est pas recommandée. vous pouvez donc envisager d’activer des extractions binaires exclusives dans votre contrôle de code source.However, merging text asset file changes is error-prone and not recommended, so consider enabling exclusive binary checkouts in your source control.

Voir aussiSee also