working visual studio not fuente escritura código code ayuda autocompletar activar c# visual-studio unity3d intellisense

c# - not - El autocompletado no funciona en Visual Studio



visual studio autocomplete not working (18)

  1. Seleccionar proyecto en Visual Studio
  2. Haga clic en el botón "Actualizar"

Tengo un pequeño problema con los scripts. Cuando escribo scripts de C # para Unity con Visual Studio, parece que estoy trabajando en el bloc de notas, no hay autocompletado (¿correcto?) Y debo escribirlo muy lentamente.

Por favor, mira el video. Al principio es la situación normal (del tutorial), la segunda parte muestra mi problema.

Video con problema

Por ejemplo, la clase de transform no muestra sugerencia ni autocompletar.

Imagen con problema:

transform

Versión de Unity: 5.5.2f1
Visual studio 2015
Visual Studio Tools para Unity está instalado



Dos opciones alternativas:

Fix 1

@singleton me señaló en esta dirección. En lugar de cambiar el objetivo en Visual Studio, debe cambiarlo en Unity ya que el proyecto se genera automáticamente.

Primero elimine los archivos de Visual Studio generados automáticamente: .csproj .user .sln

Luego, desde Unity, vaya a PlayerSettings y en ''Otras configuraciones'' cambie la ''Versión de tiempo de ejecución de secuencias de comandos'' de Estable 3.5 a Experimental 4.6.

Sin embargo, eso no me lo solucionó.

Fix 2

Noté que todas las referencias al código relacionado con Unity estaban marcadas con una advertencia amarilla. Verifique sus registros de errores y vea si este es el caso. En particular, vea si obtiene el siguiente error: getreferenceNearestTargetframeworkTask

Si es así, intente: Inicie Visual Studio Installer nuevamente.

En Build Tools 2017, haga clic en Modificar,

Asegúrese de que "Nuget objetivos y tareas de compilación" están marcados. Esto debería marcarse si hace clic en el desarrollo de la Plataforma universal de Windows.


El problema que enfrenté fue que el Proyecto C # apuntaba a un .NET Framework diferente (4.7.2), mientras que el proyecto Unity tenía un objetivo diferente (.NET 3.5).

Lo arreglé cambiando el objetivo en Unity como-

Archivo -> Configuración de compilación -> Configuración del reproductor -> Otras configuraciones -> Nivel de compatibilidad de API: configúrelo en la versión .NET que ya ha instalado (verifique su versión .NET here ). En mi caso, era 4.x

Después de esto, Visual Studio funcionó perfectamente y también se corrigió la autocorrección.


En mi caso, la versión correcta de .net no estaba instalada en mi PC. Instalo .net 3.5 en mi PC y eso funcionó para mí.


Encontré mi solución creando el archivo .cs desde Visual Studio en lugar del editor de la unidad

  • haga clic derecho en la carpeta del proyecto en el explorador de soluciones
  • agregar> nuevo elemento
  • escriba "unidad" en el campo de búsqueda en la parte superior derecha
  • seleccione "CSharp MonoBehaviour"
  • nombra tu script en la parte inferior y haz clic en Agregar

Encontré otra forma de solucionar este problema de una manera más conveniente:

  1. Seleccione el archivo roto en el Explorador de soluciones.
  2. Abre sus propiedades.
  3. Cambie el campo "Crear acción" de "Compilar" a "Ninguno".
  4. Luego vuelva a cambiarlo a "Compilar".

Esto matará la sincronización entre Unity y Visual Studio de alguna manera.

La próxima vez que Visual Studio vuelva a cargar el proyecto, aparecerá una advertencia. Simplemente haga clic en "Descartar".


Intente presionar Ctrl + Alt + Space (que alterna entre los modos de sugerencia y finalización estándar)


Llegué a los mismos problemas hoy usando Visual Studio 2017 15.4.5 con Unity 2017.

Pude solucionar el problema haciendo clic derecho en el proyecto en Visual Studio y cambiando el marco de destino de 3.5 a 4.5.

Espero que esto ayude a alguien más en un escenario similar.


Lo que me funcionó es que copié todo el código dentro de la clase rota y eliminé ese archivo. Luego, abrí un archivo vacío y lo pegué.

Resultado : ¡volvieron los aspectos más destacados de la sintaxis!


Mi autocompletado tampoco funcionó porque Visual Studio Tools para Unity no estaba instalado. Entonces, después de instalar eso, elimine los archivos de Visual Studio generados automáticamente. Otros dijeron que vuelve a abrir el archivo y que el problema está resuelto pero no lo está.

El truco es: en lugar de hacer doble clic normalmente en el archivo, debe abrir el archivo C # desde Unity haciendo clic derecho y luego "Abrir proyecto C #".


Ninguna de las soluciones anteriores funcionó para mí. Sin embargo, abrí el archivo ProjectName.CSPROJ y agregué manualmente el nuevo archivo y funcionó de maravilla


No hay autocompletado porque el script dice " Varios archivos " en lugar del nombre del Proyecto. Eche un vistazo a la imagen a continuación que vino del video en su pregunta:

El mensaje " Varios archivos " puede aparecer por muchas razones:

1. Puede suceder cuando abre su archivo Unity C # desde otra carpeta en lugar de abrirlo desde Unity Editor.

2. Esto también puede suceder porque Unity se bloqueó mientras Visual Studio todavía está abierto, por lo tanto, corrompe algunos archivos.

3. Puede suceder porque Unity se cerró y luego se volvió a abrir, pero ya no está conectado a Visual Studio. Cuando se abre Visual Studio, obtienes " Varios archivos " y no se completa automáticamente.

4. Esto puede suceder cuando Visual Studio Tools for unity no está instalado.

5. Cuando crea un script desde Unity, ábralo rápidamente antes de que Unity termine de procesarlo o antes de que el ícono de la ronda de animación termine de animarse.

La mayoría de las veces, reiniciar Unity y Visual Studio deberían solucionar esto.

No puedo decir cuál está causando el problema, pero cubriré la solución más probable para solucionarlo.

Arreglar la Parte 1 :

1.Descargue e instale Visual Studio Tools para la unidad desde this enlace. Haga esto mientras Unity y Visual Studio están cerrados.

2. Desde Unity Editor, vaya a Editar -> Preferencias ... -> Herramientas externas . En el menú desplegable Editor de script externo , cámbielo a Visual Studio 2015 .

Arreglar la Parte 2 :

Si los archivos C # recién creados aparecen como Varios , siga las instrucciones a continuación:

1. Desde Visual Studio, vaya a Herramientas -> Opciones ... -> Herramientas para Unity -> Varios . En Mostrar icono de conectividad , configúrelo como true luego reinicie Visual Studio.

2. Cuando reinicie, el icono de conexión ahora debería estar disponible en Visual Studio. Haga clic en él y luego elija la instancia de Unity para conectarse. El ícono rojo ''x'' ahora debería convertirse en un ícono de marca de verificación marrón. Ahora, cuando crea un nuevo archivo C # en Unity, debería abrirse sin decir Varios .

Arreglar la Parte 3 :

¿Todavía no está arreglado?

Vuelva a importar el proyecto y luego abra C # Project.

1 .Cierre Visual Studio.

2. Desde Unity, vuelva a importar el proyecto yendo a Activos -> Reimportar todo .

3.Ahora, abra el proyecto en Visual Studio yendo a Activos -> Abrir proyecto C # . Esto volverá a cargar el proyecto y solucionará los posibles problemas del archivo de solución.

Arreglar la Parte 4 :

¿Todavía no está arreglado?

Arregle cada archivo C # individualmente.

1. Haga clic en el icono Mostrar todos los archivos .

2. Seleccione el script que no se completa automáticamente, luego haga clic derecho y seleccione Incluir en el proyecto .

Arreglar la Parte 5 :

¿Aún no está arreglado?

El crédito va a chrisvarnz por esta solución particular que parece haber funcionado para varias personas.

1 .Cierre Visual Studio

2. Vaya al directorio de su proyecto y elimine todos los archivos de Visual Studio generados.

Estas son las extensiones de archivos para eliminar:

  • .csproj
  • .usuario
  • .sln

Ejemplo:

Digamos que el nombre de su proyecto se llama "Target Shoot" , estos son los archivos que debe eliminar:

  • Target Shoot.csproj
  • Target Shoot.Editor.csproj
  • Target Shoot.Editor.csproj.user
  • Target Shoot.Player.csproj
  • Target Shoot.Player.csproj.user
  • Target Shoot.sln

No elimines nada más.

3. Haga doble clic en el script nuevamente desde Unity, que debería generar un nuevo archivo de Visual Studio y luego abra Visual Studio. Esto puede resolver su problema.

Arreglar la Parte 6 :

Si no funciona, verifique si tiene this error:

No se encontró la tarea "GetReferenceNearestTargetFrameworkTask"

1.Instale Nuget PackageManager desde here .

2. Reiniciar Visual Visual.

Vea this respuesta para más información.


Prueba esto,

En Unity Editor, vaya a Menú, haga clic en Editar -> Preferencias -> Herramientas externas -> Editor de script externo. Configúrelo en Visual Studio (su versión instalada de VS).

Ahora en la barra de menú, vaya a Editar -> Configuración del proyecto -> Configuración del reproductor -> Otras configuraciones -> En Configuración -> Verificar nivel de compatibilidad de API -> Cámbielo a su versión .Net instalada. En mi caso lo configuré en .Net 4.x

Ahora, si Visual Studio se está ejecutando, vaya a Visual Studio, le pedirá que vuelva a cargar el proyecto. Recargar el proyecto. Compruebe si funciona, si no cierra Visual Studio. Ahora abra el archivo cs desde Unity Editor, y ahora debería funcionar.


Resolví instalar la misma versión de .NET en WIN que estaba configurada en mi proyecto de Unity. (Configuración del jugador)


Tenga en cuenta que si está utilizando la herramienta ReSharper, anulará el IntelliSense y mostrará su propio. Para cambiar eso, en VS, vaya a Extensiones -> ReSharper -> Opciones -> IntelliSense -> General, luego elija Visual Studio y no ReSharper.


Para Windows o macOS:

Descargue / instale el IDE de Visual Studio (con las herramientas de Unity)

Al instalar, asegúrese de incluir la instalación de

Desarrollo de juegos con Unity

Luego, utilizando Unity (puede hacer doble clic en uno de sus archivos C #), abra un nuevo proyecto C # y el IDE de Visual Studio debería abrirse con su nueva estructura de proyecto.

A partir de ahí, deberías poder ver lo que estás buscando.

Por ejemplo:

Para Linux (sugerencia):

Pruebe Monodevelop : información adicional , proporciona sugerencias / finalización de código.


  • Vaya a Opciones en el menú Herramientas y luego seleccione Documentos en el nodo Entorno. (Si Documentos no aparece en la lista, seleccione Mostrar todas las configuraciones en el cuadro de diálogo Opciones).
  • Marque "Varios archivos en el Explorador de soluciones" y haga clic en Aceptar. (Esta opción muestra el nodo "Varios archivos" en el Explorador de soluciones. Los archivos diversos son archivos que no están asociados con un proyecto o solución, pero pueden aparecer en el Explorador de soluciones para su conveniencia si marca esta opción).
  • Localice su archivo en el Explorador de soluciones en "Varios archivos". Luego arrastre y suelte su archivo a donde debe pertenecer y listo! Esto copiará el archivo donde lo dejaste. Ahora puede eliminar de forma segura el archivo anterior en la carpeta Varios archivos si lo desea

Créditos: https://.com/a/47662523/10471480


En caso de que la carpeta Scripts no esté visible:

  • Haga clic en "Mostrar todos los archivos" en el Explorador de soluciones
  • Localice la carpeta Scripts.
  • Haga clic derecho en Scripts y seleccione "Incluir en proyecto"