J'ai un petit problème avec les scripts. Quand j'écris des scripts C # pour Unity avec Visual studio, il semble que je travaille dans le bloc-notes, il n'y a pas d' auto-complétion (correct?) Et je dois l'écrire très lentement.
S'il vous plaît, regardez la vidéo. Au début, c'est la situation normale (à partir du tutoriel), la deuxième partie montre mon problème.
Par exemple, la transform
classe n'affiche ni suggestion ni saisie semi-automatique.
Image avec problème:
Version Unity: 5.5.2f1
Visual Studio 2015
Visual Studio Tools pour Unity est installé
c#
visual-studio
unity3d
intellisense
CorbenDalas
la source
la source
ll try... I have a Little problem with scripts. When I
écrivant des scripts C # pour Unity avec Visual Studio, il semble que je travaille dans le bloc-notes, il n'y a pas de "conseils" (correct?) Et je dois l'écrire très lentement. S'il vous plaît, regardez la vidéo. Au début, c'est une situation normale (du tutoriel), la deuxième partie est mon problème.Réponses:
Il n'y a pas d'auto-complétion car le script dit " Fichiers divers " au lieu du nom du projet. Jetez un œil à l'image ci-dessous qui provient de la vidéo dans votre question:
Le message " Fichiers divers " peut apparaître pour plusieurs raisons:
1 .Il peut se produire lorsque vous ouvrez votre fichier unité C # d'un autre dossier au lieu de l' ouverture de l' unité éditeur.
2 .Cette peut également se produire parce que l' unité est écrasé alors que Visual Studio est encore ouvert corrompt donc certains fichiers.
3. Cela peut se produire car Unity a été fermé puis rouvert mais n'est plus connecté à Visual Studio. Lorsque Visual Studio est ouvert, vous obtenez « Fichiers divers » et aucune saisie semi-automatique.
4. Cela peut se produire lorsque Visual Studio Tools for unity n'est pas installé.
5 .Lorsque vous créez un script à partir de l' unité puis ouvrez rapidement avant la fin l' unité de traitement ou avant l'arrivée stuff animation icône ronde animant.
La plupart du temps, le redémarrage de Unity et de Visual Studio devrait résoudre ce problème.
Je ne peux pas dire lequel est à l'origine du problème, mais je vais couvrir la solution la plus probable pour résoudre ce problème.
Correction de la partie 1 :
1 .Télécharger et installer Visual Studio Tools pour l' unité de ce lien. Effectuez cette opération lorsque Unity et Visual Studio sont tous deux fermés.
2 .Depuis Unity Editor, allez dans Edition -> Préférences ... -> Outils externes . Dans le menu déroulant de l' éditeur de script externe , remplacez-le par Visual Studio 2015 .
Correction de la partie 2 :
Si les fichiers C # nouvellement créés apparaissent comme Divers, suivez les instructions ci-dessous:
1 .De Visual Studio, allez à Outils -> Options de ... -> Outils pour l' unité -> Divers . Sous Afficher l'icône de connectivité , définissez-le pour
true
redémarrer Visual Studio.2 .Lorsque vous re-démarrer, icône de connexion doit maintenant être disponible dans Visual Studio. Cliquez dessus, puis choisissez l'instance Unity à laquelle vous connecter. L'icône rouge «x» devrait maintenant se transformer en icône de coche marron. Maintenant, lorsque vous créez un nouveau fichier C # dans Unity, il devrait s'ouvrir sans dire Divers .
Correction de la partie 3 :
Toujours pas fixé?
Réimportez le projet, puis ouvrez le projet C #.
1 .Fermez Visual Studio.
2 .Depuis Unity, réimportez le projet en accédant à Actifs -> Réimporter tout .
3. Maintenant, ouvrez le projet dans Visual Studio en accédant à Assets -> Open C # Project . Cela rechargera le projet et corrigera les éventuels problèmes de fichier de solution.
Correction de la partie 4 :
Toujours pas fixé?
Corrigez chaque fichier C # individuellement.
1 .Cliquez sur l' icône Afficher tous les fichiers .
2. Sélectionnez le script qui n'effectue pas de saisie semi-automatique, puis cliquez avec le bouton droit et sélectionnez Inclure dans le projet .
Fix partie 5 :
Pas encore corrigé?
Le mérite revient à chrisvarnz pour cette solution particulière qui semble avoir fonctionné pour plusieurs personnes.
1 .Fermez Visual Studio
2. Accédez au répertoire de votre projet et supprimez tous les fichiers Visual Studio générés.
Voici les extensions de fichiers à supprimer:
Exemple:
Disons que le nom de votre projet s'appelle "Target Shoot" , voici à quoi devraient ressembler les fichiers à supprimer:
Ne supprimez rien d'autre.
3. Double-cliquez à nouveau sur le script à partir de Unity qui devrait générer un nouveau fichier Visual Studio, puis ouvrez Visual Studio. Cela peut résoudre votre problème.
Correction de la partie 6 :
Si cela ne fonctionne pas, vérifiez si vous rencontrez cette erreur:
1 .install Nuget PackageManager d' ici .
2. Redémarrez Visual Visual.
Voir cette réponse pour plus d'informations.
la source
*.csproj
et*.sln
fichiers et commencer à l' unité que. Cela fonctionne généralementEssaye ça,
Maintenant, si Visual Studio est déjà en cours d'exécution, accédez à Visual Studio, il vous demandera de recharger le projet. Rechargez le projet. Vérifiez si cela fonctionne, sinon fermez Visual Studio. Maintenant, ouvrez le fichier cs à partir de Unity Editor, et maintenant cela devrait fonctionner.
la source
J'ai trouvé un autre moyen de résoudre ce problème de manière plus pratique:
Cela supprimera d'une manière ou d'une autre la synchronisation entre Unity et Visual Studio.
La prochaine fois que Visual Studio rechargera le projet, il affichera un avertissement. Cliquez simplement sur "Supprimer".
la source
Déchargez et rechargez le projet, dans Visual Studio:
Fixé!
J'ai trouvé que cette solution fonctionnait le mieux (la plus simple), après avoir rencontré le problème plusieurs fois.
Source: https://alexdunn.org/2017/04/26/xamarin-tips-fixing-the-highlighting-drop-in-your-xamarin-android-projects/
la source
la source
Si vous avez fait tout ce qui précède et que vous ne travaillez toujours pas, essayez ceci: Remarque: vous devriez avoir mis à jour VS.
Accédez à Unity> éditer> préférence> Outils externes> éditeur de script externe. D'une manière ou d'une autre, pour moi, je n'avais pas sélectionné "studio visuel" pour l'éditeur de script externe et cela ne fonctionnait pas. Dès que j'ai sélectionné ceci et double-cliqué sur le fichier c # de unity, cela a commencé à fonctionner.
J'espère que cela vous aide aussi.
la source
J'ai rencontré les mêmes problèmes aujourd'hui en utilisant Visual Studio 2017 15.4.5 avec Unity 2017.
J'ai pu résoudre le problème en cliquant avec le bouton droit sur le projet dans Visual Studio et en modifiant le framework cible de 3.5 à 4.5.
J'espère que cela aide quelqu'un d'autre dans un scénario similaire.
la source
Deux options alternatives:
Réparer 1
@singleton m'a orienté dans cette direction. Au lieu de modifier la cible dans Visual Studio, vous devez la modifier dans Unity car le projet est généré automatiquement.
Supprimez d'abord les fichiers Visual Studio générés automatiquement: .csproj .user .sln
Ensuite, depuis Unity, allez dans PlayerSettings et sous 'Other Settings', changez la 'Scripting Runtime Version' de Stable 3.5 à Experimental 4.6.
Cependant, cela ne l'a pas résolu pour moi.
Réparer 2
J'ai remarqué que toutes les références au code lié à Unity étaient marquées d'un avertissement jaune. Vérifiez vos journaux d'erreurs et voyez si c'est le cas. En particulier, voyez si vous obtenez l'erreur suivante: getreferenceNearestTargetframeworkTask
Si tel est le cas, essayez: redémarrez Visual Studio Installer.
Dans les outils de construction 2017, cliquez sur Modifier,
Assurez-vous que les «cibles Nuget et tâches de construction» sont cochées. Cela devrait être coché si vous cliquez sur le développement de la plateforme Windows universelle.
la source
J'ai trouvé ma solution en créant le fichier .cs à partir de Visual Studio lui-même au lieu de l'éditeur Unity
la source
Dans mon cas, la version .net correcte n'a pas été installée sur mon PC. J'installe le .net 3.5 sur mon PC et cela a fonctionné pour moi.
la source
Le problème auquel j'ai été confronté était que le projet C # ciblait un autre .NET Framework (4.7.2), alors que le projet Unity avait une cible différente (.NET 3.5).
J'ai corrigé cela en changeant la cible dans Unity comme-
Après cela, Visual Studio a parfaitement fonctionné et la correction automatique a également été corrigée.
la source
Essayez d'appuyer sur
Ctrl + Alt + Space
(qui bascule entre les modes de suggestion et d'achèvement standard)la source
Pour Windows ou macOS:
Téléchargez / installez l' IDE de Visual Studio (avec Unity Tools)
Lors de l'installation, assurez-vous d'inclure l'installation de
Ensuite, en utilisant Unity (vous pouvez double-cliquer sur l'un de vos fichiers C #), ouvrez un nouveau projet C # et l'IDE Visual Studio devrait s'ouvrir avec votre nouvelle structure de projet.
À partir de là, vous devriez pouvoir voir ce que vous recherchez.
Par exemple:
Pour Linux (suggestion):
Essayez Monodevelop - Informations supplémentaires , il fournit des conseils / compléments de code.
la source
J'ai résolu d'installer la même version de .NET sur WIN que celle configurée dans mon projet Unity. (Paramètres du lecteur)
la source
Ma saisie semi-automatique n'a pas non plus fonctionné car Visual Studio Tools pour Unity n'était pas installé. Ainsi, après avoir installé cela, supprimez les fichiers Visual Studio générés automatiquement. D'autres ont dit que vous ouvrez à nouveau le fichier et que le problème est résolu, mais ce n'est pas le cas.
L'astuce est: au lieu de double-cliquer normalement sur le fichier, vous devez ouvrir le fichier C # depuis Unity par un clic droit puis "Ouvrir un projet C #".
la source
Aucune des solutions ci-dessus n'a fonctionné pour moi. Cependant, j'ai ouvert le fichier ProjectName.CSPROJ et ajouté manuellement le nouveau fichier et cela a fonctionné comme un charme
la source
Crédits: https://stackoverflow.com/a/47662523/10471480
Si le dossier Scripts n'est pas visible:
la source
Ce qui m'a fonctionné, c'est que j'ai copié tout le code dans la classe cassée et supprimé ce fichier. Ensuite, j'ai ouvert un fichier vide et collé.
Résultat : de beaux points forts de la syntaxe sont revenus!
la source
Gardez à l'esprit que si vous utilisez l'outil ReSharper, il remplacera IntelliSense et affichera son propre. Pour changer cela, sur VS, accédez à Extensions -> ReSharper -> Options -> IntelliSense -> Général, puis choisissez Visual Studio et non ReSharper.
la source
Avant de redémarrer et / ou de réinstaller VS, essayez d'abord d'ouvrir un autre de vos projets pour voir si Intellisence fonctionne, si c'est le cas, le problème réside probablement dans votre projet actuel. Premièrement, la victime la plus probable serait les paquets NUGET avec des mises à jour en attente. Pour résoudre ce problème,
la source
J'ai essayé tout cela, mais j'ai fini par découvrir que je devais cliquer avec le bouton droit sur la solution dans l'Explorateur de solutions et ajouter des éléments existants et trouver le fichier d'assemblage C # dans l'Explorateur de Windows. Il semble y avoir un milliard de problèmes différents qui vous donnent cette erreur, c'est probablement la solution la plus simple. Si vous double-cliquez sur votre script depuis l'unité, il ne semble pas faire glisser l'assemblage.
la source
l'une des méthodes ci-dessus fonctionne pour moi et je viens de trouver une solution à ce problème,
1. Tout d'abord, allez dans le répertoire du projet et supprimez le
.sln
fichier2. Deuxièmement, allez à l'unité et double-cliquez sur votre script. Ensuite, Visual Studio sera ouvert avec une erreur,
.csproj
fichier. Double-cliquez simplement et ouvrez-le à partir de votre éditeur Visual Studio et ouvrez le dossier scripts dans le dossier assets et ouvrez les scripts et l'auto-complétion fonctionnera parfaitement.la source
Mise à jour 2020 avec Visual Studio Community 2019 et Unity 2019.3:
1) Ouvrez le programme d'installation de Visual Studio en tant qu'administrateur, sélectionnez pour modifier votre installation actuelle et ajoutez "Développement de jeux pour Unity"
2) Si vous ajoutez un nouveau script c # dans Unity maintenant et que vous l'ouvrez (automatiquement) avec Visual Studio, il n'est pas décrit comme "Divers" en haut de la fenêtre mais avec "Assembly-CSharp" et la saisie semi-automatique fonctionne.
la source
Une autre solution possible:
Pour une raison quelconque, ce travail.
la source
Essayez avec une combinaison: Ctrl + Alt + Space
la source