Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Visual Studio 2022, versión 17.12, proporciona compatibilidad directa con proyectos de Unreal Engine.
Anteriormente, tenía que generar un proyecto de Microsoft Visual Studio antes de poder trabajar con un proyecto de Unreal Engine en Visual Studio. Ese proceso era complicado. Y cada vez que se agregó un nuevo recurso desde el Editor de unreal Engine, o por otro miembro del equipo, el proyecto de Visual Studio tenía que volver a generarse para mantenerse sincronizado con el proyecto Unreal Engine.
Ahora, con compatibilidad directa con archivos de proyecto de Unreal Engine (.uproject
), puede trabajar directamente con proyectos de Unreal Engine desde Visual Studio. Esta integración permite la edición, depuración y administración de archivos de proyecto sin el proceso lento de generación y regeneración de un archivo de proyecto de Visual Studio.
Prerrequisitos
Debe instalarse lo siguiente para trabajar con proyectos de Unreal Engine en Visual Studio:
- Visual Studio versión 17.12 Preview 2 o posterior.
- Unreal Engine versión 4.27 o Unreal Engine versión 5 y posteriores.
- Visual Studio Tools para Unreal Engine. Consulte Instalar Visual Studio Tools para Unreal Engine para obtener instrucciones de instalación.
- Descargue el juego de ejemplo de Lyra. Consulta la sección Descargar el juego inicial Lyra en Lyra Sample Game para obtener instrucciones de descarga. Si lo adquiriste a través de la instalación de código fuente de Unreal Engine, esa versión no contiene los recursos necesarios para compilar y ejecutar el juego. Use las instrucciones de descarga para obtener todo lo que necesita a través del instalador de Epic.
Configuración de Unreal Engine 5.3 o versiones anteriores
Para las versiones de Unreal Engine anteriores a la versión 5.4, siga estos pasos para habilitar la integración de Unreal Engine .uproject
con Visual Studio. Estos pasos funcionan tanto si ha instalado Unreal Engine desde epic Games Launcher como si lo ha creado a partir del código fuente.
- Descargue el parche específico para la versión de Unreal Engine desde repositorio de GitHub de Unreal Engine. Por ejemplo, el parche
UnrealBuildTool-5.2.patch
actualiza Unreal Engine a la versión 5.2. - Abra una finestra de PowerShell o de consola de comandos y navegue al directorio raíz donde está instalado Unreal Engine. Necesita privilegios de administrador para aplicar la revisión si Unreal Engine está instalado en un directorio protegido como
C:\Program Files\Epic Games\UE_5.3
. - Aplica el parche con el comando
git apply <path to the downloaded patch file>
. Por ejemplo:git apply C:\Users\someuser\Downloads\UnrealBuiltTool-5.3.patch
. Si se produce un error, pruebegit apply -v --ignore-whitespace --ignore-space-change <path to the downloaded patch file>
.
Apertura de un proyecto nativo de Unreal Engine en Visual Studio
Hay dos maneras de abrir un proyecto nativo de Unreal Engine en Visual Studio:
- Archivo>Abrir>Carpeta que es el que se usa cuando solo hay un proyecto (
.uproject
) en la carpeta. - Archivo>Abrir>Proyecto de Unreal Engine para abrir un archivo específico de
.uproject
cuando haya varios archivos de proyecto de Unreal Engine en una carpeta.
En este ejemplo, usamos el proyecto de juego Lyra para mostrar cómo abrir un proyecto nativo de Unreal Engine en Visual Studio.
En Visual Studio, abra el menú de Archivo y seleccione Abrir>Abrir carpeta.
Vaya al directorio donde está instalado el proyecto de juego de Lyra (
LyraStarterGame.uproject
) y elija Seleccionar carpeta.Una vez seleccionada la carpeta, los archivos del proyecto aparecen en el explorador de soluciones y los mensajes aparecen en la ventana de salida con respecto a la configuración del espacio de trabajo.
Aparece un mensaje que indica que la compatibilidad con el proyecto Unreal Engine está activada y que otros sistemas de compilación como CMake y MSBUILD están deshabilitados. Para descartar este mensaje, haga clic en el X en la esquina del mensaje.
Visualización del proyecto en el Explorador de soluciones
La ventana de Explorador de Soluciones muestra muchos de los archivos y carpetas que forman parte del proyecto Unreal Engine, como las carpetas Platforms
, Plugins
y Source
. También puede ver el archivo .uproject
de Unreal Engine. La carpeta Engine contiene el directorio sources de Unreal Engine.
El explorador de soluciones se filtra para centrarse en el código fuente. De forma predeterminada, las carpetas Content
se filtran, que contienen recursos binarios como texturas, modelos, etc. Puede abrir estos recursos en el Editor de Unreal Engine. En general, los archivos binarios no se muestran en el Explorador de soluciones de Visual Studio .
No es necesario volver a generar el proyecto para ver ni editar nuevos recursos agregados fuera de Visual Studio.
Página de configuración de Unreal Engine
Visual Studio proporciona una página de configuración de proyecto de Unreal Engine. En esta página se muestra el estado de las características de Unreal Engine y le permite acceder a más características.
Para acceder a esta página desde el menú principal de Visual Studio, elija Proyecto>Configurar herramientas para Unreal Engine:
La página de configuración tiene un indicador de estado rojo/verde y un botón de actualización para opciones como Estado de configuración general, Estado de la herramienta de compilación de Unreal, Objetivos de Unreal Engine, Soporte de Blueprint, Estado de la herramienta de integración de Visual Studio, etc.
Estado de la herramienta de compilación de Unreal
Para asegurarse de que tiene la herramienta de compilación de Unreal (UBT) más reciente, seleccione el icono de actualización de Estado de la herramienta de compilación de Unreal.
En este ejemplo, aparece un mensaje que indica que La herramienta de compilación de Unreal no usa la versión más reciente disponible para el generador de áreas de trabajo. Elija Actualizar para actualizar la herramienta de compilación de Unreal a la versión más reciente:
En la ventana de salida , los mensajes aparecen mientras se prepara la herramienta de compilación de Unreal Engine. Aparecerá un mensaje que indica que el área de trabajo está lista, después de lo cual puede empezar a agregar y editar archivos.
Destinos de Unreal Engine
Cuando compila un proyecto de Unreal Engine, hay diferentes configuraciones de compilación, llamadas objetivos, que puede elegir.
La opción Objetivos de Unreal Engine es el lugar donde se generan esos objetivos. Elija el icono de actualización para actualizar la lista de destinos de Unreal Engine y abra la ventana donde puede seleccionar las configuraciones de destino que desea crear:
Para obtener más información sobre las combinaciones de objetivos, consulte la documentación de Unreal Engine Build Configuration Descriptions.
En este ejemplo, LyraClient, DebugGamey Win64 se seleccionan en las listas desplegables.
- Elija Agregar para agregarlos a la lista de configuraciones que se van a generar.
- Elija Generar objetivos para crear las configuraciones seleccionadas de cada una que tenga activada su casilla.
Una vez generados los destinos, puede seleccionarlos como se describe en Elija la configuración de compilación. Observe si hay errores en la ventana de salida al generar destinos porque es posible que algunas combinaciones no se admita.
Para quitar destinos, desmarque los que no desee y luego seleccione el botón Generar Destinos. Al seleccionar Generar destinos, se quitan los destinos que no están seleccionados, aunque no desaparecerán de esta lista hasta que vuelva a cargar el proyecto.
Editar propiedades de destino
Para editar las propiedades de destino de Unreal Engine, haga clic con el botón derecho en el archivo de destino en negrita en el Explorador de soluciones y elija Editar propiedades de destino de Unreal Engine.
Por ejemplo, si LyraEditor.Target.cs
es el objetivo de inicio (en cuyo caso está en negrita en el Explorador de soluciones), haga clic derecho sobre él y elija Editar las propiedades de este objetivo en Unreal Engine. Se abrirá el archivo UETargetProperties.json
en el editor.
Aparece un menú y en la parte inferior es la opción para editar este destino de Unreal Engine. Al seleccionar esta opción se abre UETargetProperties.json en el editor.
A continuación, puede cambiar las propiedades de destino, como los argumentos de la línea de comandos.
Editar la configuración del proyecto
Para editar la configuración del proyecto de Unreal Engine, haga clic con el botón derecho en el archivo .uproject
en el Explorador de soluciones y elija Editar la configuración del proyecto unreal Engine.
El archivo ProjectSettings.json
se abre en el editor. A continuación, puede cambiar la configuración del proyecto, como los archivos de proyecto y los archivos del motor que se excluirán de la vista del Explorador de soluciones, qué rutas de inclusión compartidas excluir de IntelliSense, etc. Puede usar esta configuración para excluir archivos que no necesita para acelerar IntelliSense.
Aparece un menú y, en la parte inferior, se muestra la opción de editar la configuración del proyecto Unreal Engine. Al seleccionar esta opción se abre el archivo '.uproject' en el editor.
Elección de la configuración de compilación
Para elegir una configuración de compilación, elija el destino que desee en la lista desplegable Configuración:
El menú desplegable de configuración contiene los elementos: DebugGame - Win64 y Desarrollo - Win64.
Si el objetivo que desea construir no está en la lista, agréguelo como se describe en Destinos de Unreal Engine.
Edición y depuración en Visual Studio
Puede editar, compilar y depurar el proyecto de Unreal Engine en Visual Studio. Para obtener información sobre cómo agregar módulos, clases y complementos de Unreal Engine en Visual Studio, consulte Agregar clases, módulos y complementos de Unreal Engine en Visual Studio.
Puedes establecer puntos de interrupción en el código y, a continuación, ejecutar el juego en el Editor de motor de Unreal. Cuando se alcanza un punto de interrupción, puede depurar el código en Visual Studio.
De forma predeterminada, Visual Studio genera solo un objetivo: Desarrollo - Win64. Este objetivo compila e inicia el Editor de Unreal con el proyecto de juego cargado.
Si abrió la carpeta del proyecto de muestra del juego Lyra en Visual Studio, intente depurar siguiendo estos pasos:
- En Visual Studio, abra
LyraGameplayAbility_RangedWeapon.cpp
. Busque ese archivo en el panel Buscar del Explorador de Soluciones de o encuéntrelo bajo Games>LyraStarterGame>Source>LyraGame>Armas>LyraGameplayAbility_RangedWeapon.cpp. - En
LyraGameplayAbility_RangedWeapon.cpp
, vaya a la línea 477 aproximadamente. Busque la función :void ULyraGameplayAbility_RangedWeapon::OnTargetDataReadyCallback
. - Coloque un punto de interrupción en la función presionando F9.
- Ejecute el juego muestra en Visual Studio seleccionando Depurar >Iniciar depuración. Dé un tiempo al Editor de motor de Unreal para cargar el juego.
- En el Editor de motor de Unreal, elija el botón Reproducir de la barra de herramientas (o presione
Alt+p
) para iniciar el juego. - En el juego Lyra, use las teclas
w
,a
,s
,d
para desplazar al jugador a la izquierda del portalEliminación. Coloque el jugador sobre el portal de entrada para cargar el juego. - Una vez que se esté ejecutando el juego, haga clic en el botón del ratón para que se active y debería ver el punto de interrupción en Visual Studio:
Problemas comunes y soluciones
- El motor y el código del juego deben estar en la misma unidad. Si no es así, consulte Origen del juego y origen del motor están en diferentes unidades.
- No se admiten varios archivos
.uproject
en la misma carpeta. Para abrir un archivo de.uproject
específico cuando haya varios archivos de proyecto en la misma carpeta, use Archivo>Abrir>Proyecto Unreal Engine. - Si abre un proyecto de Unreal Engine a través de Archivo>Abrir>Proyecto de Unreal Engine, el proyecto no aparece en la lista de Proyectos y Soluciones Recientes de Archivo> de Visual Studio. Si abre el proyecto de Unreal Engine a través de Archivo>Abrir carpeta, el proyecto Unreal Engine abierto aparece en la lista de proyectos recientes abiertos.
- Es posible que algunas extensiones no funcionen con un proyecto abierto como un proyecto de Unreal Engine.
- La ventana de propiedades está vacía para los archivos de origen. Actualmente, esto es así por diseño.
- Hay un archivo de solución de Visual Studio en la vista de carpetas. Unreal Engine genera este archivo, pero Visual Studio no lo usa y puede omitirlo.
La fuente del juego y la fuente del motor están en diferentes discos
Si el código fuente de Unreal Engine y el código fuente del juego están en unidades diferentes, aparece un error al abrir el proyecto de código de juego. Por ejemplo: si el juego se encuentra en C:\Users\MyUser\MyGame
, el motor de Unreal debe estar ubicado en algún lugar de la unidad C:\
; de lo contrario, la compatibilidad con proyectos de Unreal Engine en Visual Studio no está disponible:
Se recomienda una de las siguientes soluciones:
Solución 1: mover el código del juego y del motor a la misma unidad
La solución más sencilla es mover el proyecto de juego a la misma unidad lógica donde reside Unreal Engine mediante el Windows File Explorer
.
Si vas a mover la fuente de Unreal Engine que instalaste a través de la Epic Games Launcher
, desinstala el motor y vuelve a instalarlo en la misma unidad que el juego. De este modo, los archivos de configuración del motor reflejan la nueva ubicación.
Una vez que tengas el código fuente del juego y el código fuente del motor en la misma unidad, puedes abrir el .uproject
en Visual Studio.
Solución 2: Crear un vínculo simbólico a Unreal Engine y cambiar la propiedad de asociación del motor
Si no es factible mover la fuente del motor y la fuente del juego a la misma unidad, puedes crear un vínculo simbólico a la fuente de Unreal Engine y cambiar la propiedad EngineAssociation
en el archivo .uproject
para que coincidan.
En este ejemplo, supongamos que el motor de Unreal se encuentra en C:\Program Files\Epic Games\UE_5.4
y el juego se encuentra en Q:\src\game
.
- Abra una ventana de comandos (no PowerShell).
- Vaya a la unidad donde se encuentra el archivo origen de su juego. Por ejemplo,
cd /d Q:\
. - Cree un vínculo simbólico que apunte al motor de Unreal. El comando
mklink
toma un parámetro de vínculo que especifica el nombre simbólico del vínculo, que es cómo aparece la ubicación del directorio en el sistema de archivos. El parámetro de objetivo es al que se está vinculando. Por ejemplo,mklink /d "Q:\UE-Link" "C:\Program Files\Epic Games\UE_5.4"
crea un vínculo simbólico denominadoQ:\UE-Link
que apunta al directorio Unreal Engine de la unidadC:
. - Abra el archivo
.uproject
del juego y cambie la propiedadEngineAssociation
para que sea la carpeta de vínculo simbólico que creó. Por ejemplo,"EngineAssociation": "Q:\\UE-Link"
.
Ahora puedes abrir el .uproject
en Visual Studio porque tanto el código fuente del juego como el del motor parecen estar en la misma unidad de disco. El vínculo simbólico se encargará de redirigir las referencias de archivo al motor.
Solución 3: Crear un vínculo simbólico a Unreal Engine y cambiar archivos de configuración
Esta solución es frágil porque cambia un archivo de configuración y el cambio se puede revertir la próxima vez que actualice Unreal Engine.
En este ejemplo, supongamos que el motor de Unreal se encuentra en C:\Program Files\Epic Games\UE_5.4
y el juego se encuentra en Q:\src\Game
- Abra una ventana del símbolo del sistema (no PowerShell).
- Vaya a la unidad donde se encuentra el archivo origen de su juego. Por ejemplo,
cd /d Q:\
. - Cree un vínculo simbólico que apunte al motor de Unreal. El comando
mklink
toma un parámetro de vínculo que especifica el nombre simbólico del vínculo, que es cómo aparece la ubicación del directorio en el sistema de archivos. El parámetro de destino es a lo que estás enlazando. Por ejemplo,mklink /d "Q:\UE-Link" "C:\Program Files\Epic Games\UE_5.4"
crea un vínculo simbólico denominadoQ:\UE-Link
que apunta al directorio Unreal Engine de la unidadC:
. - Abra
C:\ProgramData\Epic\UnrealEngineLauncher\LauncherInstalled.dat
en un editor. - Reemplace el valor de
InstallLocation
por la ruta del vínculo simbólico que creó. Este ejemplo es para UE 5.4 instalado en la unidadC:
y el vínculo simbólico está en la unidadQ:
.
Antes:
{
"InstallationList": [
{
"InstallLocation": "C:\\Program Files\\Epic Games\\UE_5.3",
...
"AppName": "UE_5.4"
},
}
Después:
{
"InstallationList": [
{
"InstallLocation": "Q:\\UE-Link",
...
"AppName": "UE_5.4"
},
}
Ahora puede abrir el .uproject
en Visual Studio porque el código fuente del juego y el código fuente del motor parecen estar en la misma unidad. El vínculo simbólico se encargará de redirigir las referencias de archivo al motor.
Contenido relacionado
Visual Studio Tools para Unreal Engine
Agregar clases, módulos y complementos de Unreal Engine en Visual Studio
Inicio rápido: Visual Studio Tools para Unreal Engine
Ver planos técnicos de unreal Engine en Visual Studio
Ver el registro de Unreal Engine en Visual Studio
Ver macros de Unreal Engine en Visual Studio